Interface CypherMapAccess

  • All Known Implementing Classes:
    CypherMapWrapper

    public interface CypherMapAccess
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      boolean containsKey​(java.lang.String key)
      Checks if the given key exists in the configuration.
      static @NotNull java.lang.String failOnBlank​(java.lang.String key, @Nullable java.lang.String value)  
      static <T> T failOnNull​(java.lang.String key, T value)  
      default boolean getBool​(java.lang.String key, boolean defaultValue)  
      default <V> V getChecked​(java.lang.String key, V defaultValue, java.lang.Class<V> expectedType)  
      default double getDouble​(java.lang.String key, double defaultValue)  
      default int getInt​(java.lang.String key, int defaultValue)  
      default long getLong​(java.lang.String key, long defaultValue)  
      int getLongAsInt​(java.lang.String key)  
      default java.lang.Number getNumber​(java.lang.String key, java.lang.Number defaultValue)  
      default <E> java.util.Optional<E> getOptional​(java.lang.String key, java.lang.Class<E> clazz)  
      default java.util.Optional<java.lang.String> getString​(java.lang.String key)  
      default @Nullable java.lang.String getString​(java.lang.String key, @Nullable java.lang.String defaultValue)  
      java.util.Collection<java.lang.String> keySet()  
      default java.lang.IllegalArgumentException missingValueFor​(java.lang.String key)  
      default boolean requireBool​(java.lang.String key)  
      default <V> V requireChecked​(java.lang.String key, java.lang.Class<V> expectedType)  
      default double requireDouble​(java.lang.String key)  
      default int requireInt​(java.lang.String key)  
      default long requireLong​(java.lang.String key)  
      default java.lang.Number requireNumber​(java.lang.String key)  
      default void requireOnlyKeysFrom​(java.util.Collection<java.lang.String> allowedKeys)  
      default java.lang.String requireString​(java.lang.String key)  
      java.util.Map<java.lang.String,​java.lang.Object> toMap()
      Returns a copy of the internal Map.
      <V> V typedValue​(java.lang.String key, java.lang.Class<V> expectedType)  
      static double validateDoubleRange​(java.lang.String key, double value, double min, double max, boolean minInclusive, boolean maxInclusive)  
      static int validateIntegerRange​(java.lang.String key, int value, int min, int max, boolean minInclusive, boolean maxInclusive)  
      static long validateLongRange​(java.lang.String key, long value, long min, long max, boolean minInclusive, boolean maxInclusive)  
      default CypherMapAccess.PairResult verifyMutuallyExclusivePairs​(java.lang.String firstPairKeyOne, java.lang.String firstPairKeyTwo, java.lang.String secondPairKeyOne, java.lang.String secondPairKeyTwo, java.lang.String errorPrefix)
      Verifies that only one of two mutually exclusive pairs of configuration keys is present.
    • Method Detail

      • failOnNull

        static <T> T failOnNull​(java.lang.String key,
                                T value)
      • failOnBlank

        @NotNull
        static @NotNull java.lang.String failOnBlank​(java.lang.String key,
                                                     @Nullable
                                                     @Nullable java.lang.String value)
      • validateIntegerRange

        static int validateIntegerRange​(java.lang.String key,
                                        int value,
                                        int min,
                                        int max,
                                        boolean minInclusive,
                                        boolean maxInclusive)
      • validateLongRange

        static long validateLongRange​(java.lang.String key,
                                      long value,
                                      long min,
                                      long max,
                                      boolean minInclusive,
                                      boolean maxInclusive)
      • validateDoubleRange

        static double validateDoubleRange​(java.lang.String key,
                                          double value,
                                          double min,
                                          double max,
                                          boolean minInclusive,
                                          boolean maxInclusive)
      • missingValueFor

        default java.lang.IllegalArgumentException missingValueFor​(java.lang.String key)
      • requireOnlyKeysFrom

        default void requireOnlyKeysFrom​(java.util.Collection<java.lang.String> allowedKeys)
      • containsKey

        boolean containsKey​(java.lang.String key)
        Checks if the given key exists in the configuration.
        Parameters:
        key - key to look for
        Returns:
        true, iff the key exists
      • keySet

        java.util.Collection<java.lang.String> keySet()
      • getString

        default java.util.Optional<java.lang.String> getString​(java.lang.String key)
      • requireString

        default java.lang.String requireString​(java.lang.String key)
      • getOptional

        default <E> java.util.Optional<E> getOptional​(java.lang.String key,
                                                      java.lang.Class<E> clazz)
      • getString

        @Contract("_, !null -> !null")
        @Nullable
        default @Nullable java.lang.String getString​(java.lang.String key,
                                                     @Nullable
                                                     @Nullable java.lang.String defaultValue)
      • getBool

        default boolean getBool​(java.lang.String key,
                                boolean defaultValue)
      • requireBool

        default boolean requireBool​(java.lang.String key)
      • getNumber

        default java.lang.Number getNumber​(java.lang.String key,
                                           java.lang.Number defaultValue)
      • requireNumber

        default java.lang.Number requireNumber​(java.lang.String key)
      • getLong

        default long getLong​(java.lang.String key,
                             long defaultValue)
      • requireLong

        default long requireLong​(java.lang.String key)
      • getInt

        default int getInt​(java.lang.String key,
                           int defaultValue)
      • requireInt

        default int requireInt​(java.lang.String key)
      • getLongAsInt

        int getLongAsInt​(java.lang.String key)
      • getDouble

        default double getDouble​(java.lang.String key,
                                 double defaultValue)
      • requireDouble

        default double requireDouble​(java.lang.String key)
      • getChecked

        @Contract("_, !null, _ -> !null")
        @Nullable
        default <V> V getChecked​(java.lang.String key,
                                 @Nullable
                                 V defaultValue,
                                 java.lang.Class<V> expectedType)
      • requireChecked

        default <V> V requireChecked​(java.lang.String key,
                                     java.lang.Class<V> expectedType)
      • typedValue

        @NotNull
        <V> V typedValue​(java.lang.String key,
                         java.lang.Class<V> expectedType)
      • toMap

        java.util.Map<java.lang.String,​java.lang.Object> toMap()
        Returns a copy of the internal Map.
      • verifyMutuallyExclusivePairs

        default CypherMapAccess.PairResult verifyMutuallyExclusivePairs​(java.lang.String firstPairKeyOne,
                                                                        java.lang.String firstPairKeyTwo,
                                                                        java.lang.String secondPairKeyOne,
                                                                        java.lang.String secondPairKeyTwo,
                                                                        java.lang.String errorPrefix)
                                                                 throws java.lang.IllegalArgumentException
        Verifies that only one of two mutually exclusive pairs of configuration keys is present. More precisely, the following condition is checked: (firstPairKeyOne AND firstPairKeyTwo) XOR (secondPairKeyOne AND secondPairKeyTwo) If the condition is verified, the return value will identify which one of the pairs is present. In the error case where the condition is violated, an IllegalArgumentException is thrown. The message of that exception depends on which keys are present, possible mis-spelled, or absent.
        Throws:
        java.lang.IllegalArgumentException