Class AbstractCollectionUniqueKeyValidator<O,​F>

  • Type Parameters:
    O - type of object to validate inside the collection.
    All Implemented Interfaces:
    io.ultreia.java4all.validation.impl.java.FieldValidator<O,​Collection<F>>

    public abstract class AbstractCollectionUniqueKeyValidator<O,​F>
    extends io.ultreia.java4all.validation.impl.java.validator.SkipableFieldValidatorSupport<O,​Collection<F>>
    Abstract collection unique key validator that will be extended by generation to stop using costing ognl usage.

    Compile time is always a better choice that runtime :)

    Created on 30/10/2022.

    Since:
    9.0.17
    Author:
    Tony Chemit - dev@tchemit.fr
    • Constructor Detail

      • AbstractCollectionUniqueKeyValidator

        public AbstractCollectionUniqueKeyValidator​(String fieldName,
                                                    Function<O,​Collection<F>> fieldFunction,
                                                    String validationMessageKey)
      • AbstractCollectionUniqueKeyValidator

        public AbstractCollectionUniqueKeyValidator​(String fieldName,
                                                    Function<O,​Collection<F>> fieldFunction,
                                                    BiFunction<O,​io.ultreia.java4all.validation.api.NuitonValidationContext,​Boolean> skipFunction,
                                                    String validationMessageKey)
    • Method Detail

      • computeUniqueKey

        protected abstract String computeUniqueKey​(F collectionValue)
      • validateWhenNotSkip

        protected void validateWhenNotSkip​(O object,
                                           io.ultreia.java4all.validation.api.NuitonValidationContext validationContext,
                                           io.ultreia.java4all.validation.impl.java.ValidationMessagesCollector messagesCollector)
        Specified by:
        validateWhenNotSkip in class io.ultreia.java4all.validation.impl.java.validator.SkipableFieldValidatorSupport<O,​Collection<F>>
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         IdDto value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         Date value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         Enum<?> value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         Number value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         int value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         String value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         long value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         double value)
      • addComponentValue

        protected void addComponentValue​(StringBuilder builder,
                                         float value)