public void onNext()

in tooling/rib-intellij-plugin/native/intellij-broadcast-rib/src/main/java/com/uber/debug/broadcast/rib/RibHierarchyDebugBroadcastHandler.java [124:154]


  public void onNext(RibRouterEvent ribRouterEvent) {
    Router childRouter = ribRouterEvent.getRouter();
    Router parentRouter = ribRouterEvent.getParentRouter();
    if (parentRouter == null) {
      return;
    }
    UUID childId = createRouterIdIfNeeded(childRouter);
    UUID parentId = createRouterIdIfNeeded(parentRouter);
    try {
      switch (ribRouterEvent.getEventType()) {
        case ATTACHED:
          addChild(parentId, childId);
          break;
        case DETACHED:
          removeChild(parentId, childId);
          break;
        default:
          throw new UnsupportedOperationException(
              "Unknown command: " + ribRouterEvent.getEventType());
      }
    } catch (IllegalArgumentException e) {
      String message =
          String.format(
              Locale.US,
              "Error processing RibEvent %s: parent=%s child=%s",
              ribRouterEvent.getEventType().toString(),
              parentRouter.getClass().getSimpleName(),
              childRouter.getClass().getSimpleName());
      Log.w(TAG, message);
    }
  }