Class FindObjectUtils

java.lang.Object
io.github.mrtimeey.objectfinder.core.FindObjectUtils

public final class FindObjectUtils extends Object
Utility class to find specific objects in complex data structures.
  • Method Details

    • findAll

      public static <T> List<T> findAll(Object base, Pair<String,Object> searchPattern, Class<T> toClazz)
      Searches for tall occurrence (top down) of provided search pattern.
      Left side of search pattern can be a string or a json pointer.

      Search pattern examples:
      
        Pair.of("clientId", Identifier.of("uuid");
        Pair.of("clientId.value", "uuid");
        Pair.of("/information/metadata/key", "InsuranceStart");
        Pair.of(".metadata.key", "X_FREISCHUSS");
        
      Type Parameters:
      T - Target object type
      Parameters:
      base - Base Object to traverse
      searchPattern - The pattern to identify the searched object
      toClazz - The searched Class type
      Returns:
      The serialized object wrapped in an Optional or Optional.empty()
    • find

      public static <T> Optional<T> find(Object base, Pair<String,Object> searchPattern, Class<T> toClazz)
      Searches for the first occurrence (top down) of provided search pattern.
      Left side of search pattern can be a string or a json pointer.

      Search pattern examples:
      
        Pair.of("clientId", Identifier.of("uuid");
        Pair.of("clientId.value", "uuid");
        Pair.of("/information/metadata/key", "InsuranceStart");
        Pair.of(".metadata.key", "X_FREISCHUSS");
        
      Type Parameters:
      T - Target object type
      Parameters:
      base - Base Object to traverse
      searchPattern - The pattern to identify the searched object
      toClazz - The searched Class type
      Returns:
      The serialized object wrapped in an Optional or Optional.empty()