private static void recursiveEntitySort()

in validator/src/main/java/com/amazon/aoc/helpers/SortUtils.java [20:41]


  private static void recursiveEntitySort(List<Entity> entities, int depth) {
    if (entities == null || entities.size() == 0 || depth >= MAX_RESURSIVE_DEPTH) {
      return;
    }
    int currDepth = depth + 1;

    for (Entity entity : entities) {
      if (entity.getSubsegments() != null && !entity.getSubsegments().isEmpty()) {
        recursiveEntitySort(entity.getSubsegments(), currDepth);
      }
    }

    entities.sort(
        (entity1, entity2) -> {
          if (entity1.getStartTime() == entity2.getStartTime()) {
            return 0;
          }

          return entity1.getStartTime() < entity2.getStartTime() ? -1 : 1;
        }
    );
  }