Class StreamUtils

java.lang.Object
org.qubership.atp.ram.utils.StreamUtils

public class StreamUtils extends Object
  • Method Details

    • extractIds

      public static <T> Set<UUID> extractIds(Collection<T> entities, Function<T,UUID> extractor)
      Extract id's from any type entities.
      Type Parameters:
      T - processed entities type
      Parameters:
      entities - input entities
      extractor - id extractor
      Returns:
      result set
    • extractIds

      public static <T extends RamObject> Set<UUID> extractIds(Collection<T> entities)
      Extract id's set from any type entities.
      Type Parameters:
      T - processed entities type
      Parameters:
      entities - input entities
      Returns:
      result set
    • extractFlatIds

      public static <T> Set<UUID> extractFlatIds(Collection<T> entities, Function<T,Collection<UUID>> extractor)
      Extract flat id's from any type entities.
      Type Parameters:
      T - processed entities type
      Parameters:
      entities - input entities
      extractor - id extractor
      Returns:
      result set
    • extractFlatEntities

      public static <T, E> List<E> extractFlatEntities(Collection<T> entities, Function<T,Collection<E>> extractor)
      Extract flat entities from any type entities.
      Type Parameters:
      T - processed entities type
      Parameters:
      entities - input entities
      extractor - flat entity extractor
      Returns:
      result list
    • extractNames

      public static <T extends RamObject> List<String> extractNames(Collection<T> entities)
      Extract id's set from any type entities.
      Type Parameters:
      T - processed entities type
      Parameters:
      entities - input entities
      Returns:
      result set
    • extractIdsToList

      public static <T extends RamObject> List<UUID> extractIdsToList(Collection<T> entities)
      Extract id's list from any type entities.
      Type Parameters:
      T - processed entities type
      Parameters:
      entities - input entities
      Returns:
      result list
    • stream

      public static <T> Stream<T> stream(Iterable<T> entities)
    • toKeyEntityMap

      public static <T> Map<UUID,T> toKeyEntityMap(Iterable<T> entities, Function<T,UUID> keyExtractor)
    • toIdEntityMap

      public static <T> Map<UUID,T> toIdEntityMap(Iterable<T> entities, Function<T,UUID> keyExtractor)
    • toIdEntityMap

      public static <T extends RamObject> Map<UUID,T> toIdEntityMap(Iterable<T> entities)
    • toEntityMap

      public static <T, R> Map<R,T> toEntityMap(Iterable<T> entities, Function<T,R> keyExtractor)
    • toIdNameEntityMap

      public static <T extends RamObject> Map<UUID,String> toIdNameEntityMap(Iterable<T> entities)
    • toMapWithListEntitiesValues

      public static <T> Map<UUID,List<T>> toMapWithListEntitiesValues(Iterable<T> entities, Function<T,UUID> keyExtractor)
    • toEntityListMap

      public static <T> Map<UUID,List<T>> toEntityListMap(Iterable<T> entities, Function<T,UUID> keyExtractor)
    • mapToClazz

      public static <T, R> List<R> mapToClazz(Iterable<T> entities, Class<R> clazz)
      Map entities from list to another type.
      Type Parameters:
      T - entities type
      R - convert type
      Parameters:
      entities - entities list
      clazz - convert class
      Returns:
      result list
    • mapToClazz

      public static <T, R> R mapToClazz(T entity, Class<R> clazz)
      Map entity to another type.
      Type Parameters:
      T - entities type
      R - convert type
      Parameters:
      entity - entity
      clazz - convert class
      Returns:
      result list
    • map

      public static <T, R> List<R> map(Collection<T> entities, Function<T,R> mapFunc)
      Map entities using provided map function.
      Type Parameters:
      T - input entites type
      R - output entites type
      Parameters:
      entities - entities
      mapFunc - map function
      Returns:
      result list
    • extractFields

      public static <T, R> Set<R> extractFields(Collection<T> entities, Function<T,R> extractor)
      Extract specified field from entities list.
      Type Parameters:
      T - entities type
      R - convert type
      Parameters:
      entities - entities list
      extractor - extract function
      Returns:
      result set
    • filterList

      public static <T> List<T> filterList(Collection<T> entities, Predicate<T> predicate)
      Filter list with specified predicate.
      Type Parameters:
      T - entity type
      Parameters:
      entities - input entities list
      predicate - list predicate
      Returns:
      result list
    • filterList

      public static <T extends RamObject> List<T> filterList(Collection<T> entities, Predicate<T> predicate, Comparator<T> sort)
      Filter list with specified predicate.
      Type Parameters:
      T - entity type
      Parameters:
      entities - input entities list
      predicate - list predicate
      sort - list sort condition
      Returns:
      result list
    • filterList

      public static <T extends RamObject> List<T> filterList(Collection<T> entities, Collection<UUID> containKeys)
      Filter list with specified keys.
      Type Parameters:
      T - entity type
      Parameters:
      entities - input entities list
      containKeys - filter entities keys
      Returns:
      result list
    • filterList

      public static <T> List<T> filterList(Collection<T> entities, Function<T,UUID> entityKeyExtractFunc, Collection<UUID> containKeys)
      Filter list with specified keys.
      Type Parameters:
      T - entity type
      Parameters:
      entities - input entities list
      containKeys - filter entities keys
      Returns:
      result list
    • findFirstInList

      public static <T> T findFirstInList(Collection<T> entities, Predicate<T> predicate)
      Find first entity in list with specified predicate.
      Type Parameters:
      T - entity type
      Parameters:
      entities - input entities list
      predicate - list predicate
      Returns:
      result entity
    • filterByTestScopeSection

      public static <T> List<T> filterByTestScopeSection(Collection<T> entities, Function<T,TestScopeSections> entityKeyExtractFunc, TestScopeSections testScopeSection)
      Filter list with specified keys.
      Type Parameters:
      T - entity type
      Parameters:
      entities - input entities list
      testScopeSection - test scope section
      Returns:
      result list
    • isAllListIdsPresent

      public static <T> boolean isAllListIdsPresent(Collection<T> entities, Collection<UUID> ids, Function<T,UUID> entityKeyExtractFunc)
    • getEntitiesFromMap

      public static <T> List<T> getEntitiesFromMap(Set<UUID> ids, Map<UUID,T> entitiesMap)
      Get list of entities from corresponding map.
      Parameters:
      ids - entities identifiers
      entitiesMap - entities map
      Returns:
      list of entities
    • checkAndReturnSingular

      public static <T> T checkAndReturnSingular(Collection<T> entities)
      Check entities collection and return the first one.
      Type Parameters:
      T - entity type
      Parameters:
      entities - entities
      Returns:
      first entity from the collection
    • toUpperCase

      public static Collection<String> toUpperCase(Collection<String> input)
      Uppercase string collection.
      Parameters:
      input - input collection
      Returns:
      collection with uppercase strings