Class NameValidator

java.lang.Object
org.alfresco.util.schemacomp.validator.NameValidator
All Implemented Interfaces:
DbValidator
Direct Known Subclasses:
IndexColumnsValidator, TypeNameOnlyValidator

public class NameValidator extends Object implements DbValidator
Validates the name of a DbObject using a regular expression. A regular expression can be supplied for each supported database dialect. In addition to dialect specific regular expressions, a default may be supplied - comparisons will fall back to the default if no specific dialect is matched.
Author:
Matt Ward
  • Constructor Details

    • NameValidator

      public NameValidator()
  • Method Details

    • validate

      public void validate(DbObject reference, DbObject target, DiffContext ctx)
      Description copied from interface: DbValidator
      Validate the target database object (against the reference object if necessary). Store the validation results on the DiffContext.
      Specified by:
      validate in interface DbValidator
      Parameters:
      reference - DbObject
      target - DbObject
      ctx - DiffContext
    • setPattern

      public void setPattern(Pattern pattern)
    • getPattern

      public Pattern getPattern()
    • setProperty

      public void setProperty(String name, String value)
      Description copied from interface: DbValidator
      Set a property used by this validator. Validator properties provided in the schema reference XML files will be set on the validator using this method.
      Specified by:
      setProperty in interface DbValidator
      Parameters:
      name - String
      value - String
    • getProperty

      public String getProperty(String name)
      Description copied from interface: DbValidator
      Get the current value of a validator property, as set using DbValidator.setProperty(String, String).
      Specified by:
      getProperty in interface DbValidator
      Parameters:
      name - String
      Returns:
      String
    • getPropertyNames

      public Set<String> getPropertyNames()
      Description copied from interface: DbValidator
      Get the complete set of validator properties in use.
      Specified by:
      getPropertyNames in interface DbValidator
    • validates

      public boolean validates(String fieldName)
      Description copied from interface: DbValidator
      Ask whether the database object's validator is responsible for validating the specified field name. This only applies to simple properties - not DbObject instances which should provide their own validators.
      Specified by:
      validates in interface DbValidator
      Parameters:
      fieldName - String
      Returns:
      boolean
    • validatesFullObject

      public boolean validatesFullObject()
      Description copied from interface: DbValidator
      Asks whether the database object's validator is responsible for validating the entire DbObject. If true, then differences are not reported (e.g. table missing from database) as it is the validator's role to worry about presence. If validation and differences are required then report false - even if the validator works at the full object (rather than property) level.
      Specified by:
      validatesFullObject in interface DbValidator
      Returns:
      true if missing or unexpected database objects should not be reported by differencing logic.