Class Property.Validating<T>

    • Field Detail

      • delegate

        protected final Property<T> delegate
      • validator

        protected final java.util.function.Consumer<? super T> validator
    • Constructor Detail

      • Validating

        public Validating​(Property<T> delegate,
                          java.util.function.Consumer<? super T> validator)
    • Method Detail

      • getName

        public java.lang.String getName()
        Specified by:
        getName in interface NamedResource
        Returns:
        The resource name
      • getType

        public java.lang.Class<T> getType()
        Specified by:
        getType in interface Property<T>
        Returns:
        Property type - Note: for primitive types the wrapper equivalent is returned
      • getDefault

        public java.util.Optional<T> getDefault()
        Specified by:
        getDefault in interface Property<T>
        Returns:
        The Optional pre-defined default value
      • get

        public java.util.Optional<T> get​(PropertyResolver resolver)
        Specified by:
        get in interface Property<T>
        Parameters:
        resolver - The PropertyResolver to query for the property value.
        Returns:
        The Optional result - if resolver contains a value then the resolver's value, otherwise the pre-defined default
      • getOrCustomDefault

        public T getOrCustomDefault​(PropertyResolver resolver,
                                    T defaultValue)
        Specified by:
        getOrCustomDefault in interface Property<T>
        Parameters:
        resolver - The PropertyResolver to query for the property value.
        defaultValue - The default value to return if no specific value found in resolver
        Returns:
        The resolver's value or specified default if no specific value found in the resolver - regardless of whether there is a default value