Interface VaultNamedQueryCollector

  • All Implemented Interfaces:

    
    public interface VaultNamedQueryCollector<R, T>
    
                        

    A collector that is applied to the result set returned after executing the named query. Null values returned from the collection will be filtered out.

    Example usage:

    • Kotlin:
      
      class MyVaultNamedQueryCollector : VaultNamedQueryCollector<MyPojo, Int> {
      
          override fun collect(resultSet: List<MyPojo>, parameters: Map<String, Any>): VaultNamedQueryCollector.Result<Int> {
              return VaultNamedQueryCollector.Result(listOf(resultSet.maxOf { it.value }), false)
          }
      }
      
    • Java:
      
      public class MyVaultNamedQueryCollector implements VaultNamedQueryCollector<Object, Integer> {
          
          
          public Result<Integer> collect(List<Object> resultSet, Map<String, Object> parameters) {
              return new VaultNamedQueryCollector.Result<>(
                      List.of(
                              resultSet.stream()
                                      .mapToInt(e -> Integer.parseInt(e.toString()))
                                      .max()
                                      .getAsInt()
                      ),
                      false);
          }
      }
      
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      public class VaultNamedQueryCollector.Result

      Representation of a "collected" result set that also contains a flag that shows whether the result set is finished or there are still elements in the original result set.

    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      abstract VaultNamedQueryCollector.Result<T> collect(@NotNull() List<R> resultSet, @NotNull() Map<String, Object> parameters)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • collect

        @NotNull() abstract VaultNamedQueryCollector.Result<T> collect(@NotNull() List<R> resultSet, @NotNull() Map<String, Object> parameters)
        Parameters:
        resultSet - The original result set that was returned by the named query execution.
        parameters - Parameters that were present in the query.