Class Validator


  • public class Validator
    extends java.lang.Object
    Validator utility class can create a validation report for a set of input properties and a configuration description.
    • Constructor Summary

      Constructors 
      Constructor Description
      Validator()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static Validator.ReportBuilder buildReport()  
      static PluginCustomConfigValidator createCustomPropertyValidator​(PluginCustomConfig annotation)  
      static java.util.Map<java.lang.String,​java.lang.String> demapPluginGroupProperties​(java.util.Map<java.lang.String,​java.lang.String> input, Description desc)  
      static java.util.Map<java.lang.String,​java.lang.String> demapPluginGroupProperties​(java.util.Map<java.lang.String,​java.lang.String> input, java.lang.String provider, java.util.Map<java.lang.String,​java.lang.String> mapping, boolean skip)  
      static java.util.Map<java.lang.String,​java.lang.String> demapProperties​(java.util.Map<java.lang.String,​java.lang.String> input, Description desc)
      Reverses a set of properties mapped using the description's configuration to property mapping, or the same input if the description has no mapping
      static java.util.Map<java.lang.String,​java.lang.String> demapProperties​(java.util.Map<java.lang.String,​java.lang.String> input, java.util.Map<java.lang.String,​java.lang.String> mapping, boolean skip)
      Reverses a set of properties mapped using the specified property mapping, or the same input if the description has no mapping
      static Validator.Report errorReport​(java.lang.String key, java.lang.String message)
      Return a report for a single error item
      static java.util.Map<java.lang.String,​java.lang.String> mapProperties​(java.util.Map<java.lang.String,​java.lang.String> input, Description desc)
      Converts a set of input configuration keys using the description's configuration to property mapping, or the same input if the description has no mapping
      static java.util.Map<java.lang.String,​java.lang.String> performMapping​(java.util.Map<java.lang.String,​java.lang.String> input, java.util.Map<java.lang.String,​java.lang.String> mapping, boolean skip)
      Convert input keys via the supplied mapping.
      static java.util.Map<java.lang.String,​java.lang.String> performPluginGroupMapping​(java.util.Map<java.lang.String,​java.lang.String> input, java.util.Map<java.lang.String,​java.lang.String> mapping, java.lang.String provider, boolean skip)  
      static Validator.Report validate​(PropertyResolver resolver, Description description, PropertyScope defaultScope)
      Validate a set of properties for a description, and return a report.
      static Validator.Report validate​(PropertyResolver resolver, Description description, PropertyScope defaultScope, PropertyScope ignoredScope)
      Validate a set of properties for a description, and return a report.
      static Validator.Report validate​(java.util.Map<java.lang.String,​java.lang.String> props, java.util.List<Property> properties)
      Validate a set of properties for a description, and return a report.
      static Validator.Report validate​(java.util.Properties props, Description desc)
      Validate a set of properties for a description, and return a report.
      static Validator.Report validate​(java.util.Properties props, java.util.List<Property> properties)
      Validate a set of properties for a description, and return a report.
      static Validator.Report validateProperties​(PropertyResolver resolver, java.util.List<Property> properties, PropertyScope defaultScope, PropertyScope ignoredScope)
      Validate a set of properties for a description, and return a report.
      static Validator.Report validateValues​(java.util.Map<java.lang.String,​java.lang.Object> props, java.util.List<Property> properties)
      Validate properties with object values
      • Methods inherited from class java.lang.Object

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

      • Validator

        public Validator()
    • Method Detail

      • errorReport

        public static Validator.Report errorReport​(java.lang.String key,
                                                   java.lang.String message)
        Return a report for a single error item
        Parameters:
        key - key
        message - message
        Returns:
        report
      • validate

        public static Validator.Report validate​(java.util.Properties props,
                                                Description desc)
        Validate a set of properties for a description, and return a report.
        Parameters:
        props - the input properties
        desc - the configuration description
        Returns:
        the validation report
      • validate

        public static Validator.Report validate​(java.util.Properties props,
                                                java.util.List<Property> properties)
        Validate a set of properties for a description, and return a report.
        Parameters:
        props - the input properties
        properties - the properties
        Returns:
        the validation report
      • validate

        public static Validator.Report validate​(java.util.Map<java.lang.String,​java.lang.String> props,
                                                java.util.List<Property> properties)
        Validate a set of properties for a description, and return a report.
        Parameters:
        props - the input properties as a Map
        properties - the properties
        Returns:
        the validation report
      • validateValues

        public static Validator.Report validateValues​(java.util.Map<java.lang.String,​java.lang.Object> props,
                                                      java.util.List<Property> properties)
        Validate properties with object values
        Parameters:
        props - map of string to object values
        properties - list of properties
        Returns:
        validation report
      • validate

        public static Validator.Report validate​(PropertyResolver resolver,
                                                Description description,
                                                PropertyScope defaultScope)
        Validate a set of properties for a description, and return a report.
        Parameters:
        resolver - property resolver
        description - description
        defaultScope - default scope for properties
        Returns:
        the validation report
      • validate

        public static Validator.Report validate​(PropertyResolver resolver,
                                                Description description,
                                                PropertyScope defaultScope,
                                                PropertyScope ignoredScope)
        Validate a set of properties for a description, and return a report.
        Parameters:
        resolver - property resolver
        description - description
        defaultScope - default scope for properties
        ignoredScope - ignore properties at or below this scope, or null to ignore none
        Returns:
        the validation report
      • validateProperties

        public static Validator.Report validateProperties​(PropertyResolver resolver,
                                                          java.util.List<Property> properties,
                                                          PropertyScope defaultScope,
                                                          PropertyScope ignoredScope)
        Validate a set of properties for a description, and return a report.
        Parameters:
        resolver - property resolver
        properties - list of properties
        defaultScope - default scope for properties
        ignoredScope - ignore properties at or below this scope, or null to ignore none
        Returns:
        the validation report
      • mapProperties

        public static java.util.Map<java.lang.String,​java.lang.String> mapProperties​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                           Description desc)
        Converts a set of input configuration keys using the description's configuration to property mapping, or the same input if the description has no mapping
        Parameters:
        input - input map
        desc - plugin description
        Returns:
        mapped values
      • performMapping

        public static java.util.Map<java.lang.String,​java.lang.String> performMapping​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                            java.util.Map<java.lang.String,​java.lang.String> mapping,
                                                                                            boolean skip)
        Convert input keys via the supplied mapping.
        Parameters:
        input - data
        mapping - map to convert key names
        skip - if true, ignore input entries when the key is not present in the mapping
      • performPluginGroupMapping

        public static java.util.Map<java.lang.String,​java.lang.String> performPluginGroupMapping​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                                       java.util.Map<java.lang.String,​java.lang.String> mapping,
                                                                                                       java.lang.String provider,
                                                                                                       boolean skip)
      • demapProperties

        public static java.util.Map<java.lang.String,​java.lang.String> demapProperties​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                             Description desc)
        Reverses a set of properties mapped using the description's configuration to property mapping, or the same input if the description has no mapping
        Parameters:
        input - input map
        desc - plugin description
        Returns:
        mapped values
      • demapPluginGroupProperties

        public static java.util.Map<java.lang.String,​java.lang.String> demapPluginGroupProperties​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                                        Description desc)
      • demapProperties

        public static java.util.Map<java.lang.String,​java.lang.String> demapProperties​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                             java.util.Map<java.lang.String,​java.lang.String> mapping,
                                                                                             boolean skip)
        Reverses a set of properties mapped using the specified property mapping, or the same input if the description has no mapping
        Parameters:
        input - input map
        mapping - key value mapping
        skip - if true, ignore input entries when the key is not present in the mapping
        Returns:
        mapped values
      • demapPluginGroupProperties

        public static java.util.Map<java.lang.String,​java.lang.String> demapPluginGroupProperties​(java.util.Map<java.lang.String,​java.lang.String> input,
                                                                                                        java.lang.String provider,
                                                                                                        java.util.Map<java.lang.String,​java.lang.String> mapping,
                                                                                                        boolean skip)