Module net.sf.jsqlparser
Class AbstractValidator<S>
- java.lang.Object
-
- net.sf.jsqlparser.util.validation.validator.AbstractValidator<S>
-
- Type Parameters:
S
- the type of statement this DeParser supports
- All Implemented Interfaces:
Validator<S>
- Direct Known Subclasses:
AlterSequenceValidator
,AlterSessionValidator
,AlterValidator
,AlterViewValidator
,AnalyzeValidator
,CreateIndexValidator
,CreateSequenceValidator
,CreateSynonymValidator
,CreateTableValidator
,CreateViewValidator
,DeclareStatementValidator
,DeleteValidator
,DropValidator
,ExecuteValidator
,ExpressionValidator
,GrantValidator
,GroupByValidator
,InsertValidator
,LimitValidator
,MergeValidator
,OrderByValidator
,RefreshMaterializedViewStatementValidator
,ResetStatementValidator
,SelectValidator
,SetStatementValidator
,ShowColumnsStatementValidator
,ShowIndexStatementValidator
,ShowStatementValidator
,ShowTablesStatementValidator
,StatementValidator
,TableStatementValidator
,UpdateValidator
,UpsertValidator
,UseStatementValidator
,ValuesStatementValidator
public abstract class AbstractValidator<S> extends java.lang.Object implements Validator<S>
A abstract base for a Validation
-
-
Field Summary
Fields Modifier and Type Field Description private ValidationContext
context
private java.util.Map<ValidationCapability,java.util.Set<ValidationException>>
errors
private java.util.Map<java.lang.Class<? extends AbstractValidator<?>>,AbstractValidator<?>>
validatorForwards
-
Constructor Summary
Constructors Constructor Description AbstractValidator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ValidationContext
context()
protected ValidationContext
context(boolean reInit)
java.util.Collection<ValidationCapability>
getCapabilities()
protected java.util.function.Consumer<ValidationException>
getMessageConsumer(ValidationCapability c)
java.util.Map<ValidationCapability,java.util.Set<ValidationException>>
getValidationErrors()
<T extends AbstractValidator<?>>
TgetValidator(java.lang.Class<T> type)
protected boolean
isNotEmpty(java.lang.String c)
protected boolean
isNotEmpty(java.util.Collection<?> c)
private <E extends Validator<?>>
EnewObject(java.lang.Class<E> type)
protected void
putError(ValidationCapability capability, ValidationException error)
adds an error for thisValidationCapability
void
setContext(ValidationContext context)
protected void
validateFeature(Feature feature)
Iterates through allValidationCapability
and validates the feature withvalidateFeature(ValidationCapability, Feature)
protected void
validateFeature(ValidationCapability capability, boolean condition, Feature feature)
protected void
validateFeature(ValidationCapability capability, Feature feature)
Validates if givenValidationCapability
is aFeatureSetValidation
protected void
validateFeatureAndName(Feature feature, NamedObject namedObject, java.lang.String fqn)
Iterates through allValidationCapability
and validates the name withvalidateName(ValidationCapability, NamedObject, String)
the feature withvalidateFeature(ValidationCapability, Feature)
protected void
validateFeatureAndNameWithAlias(Feature feature, NamedObject namedObject, java.lang.String fqn, java.lang.String alias)
Iterates through allValidationCapability
and validates the name withvalidateName(ValidationCapability, NamedObject, String)
the feature withvalidateFeature(ValidationCapability, Feature)
protected void
validateName(NamedObject namedObject, java.lang.String fqn)
Iterates through allValidationCapability
and validates for the name withvalidateName(ValidationCapability, NamedObject, String)
protected void
validateName(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn)
protected void
validateName(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn, boolean exists, NamedObject... parents)
protected void
validateNameWithAlias(NamedObject namedObject, java.lang.String fqn, java.lang.String alias)
Iterates through allValidationCapability
and validates for the name withvalidateName(ValidationCapability, NamedObject, String)
protected void
validateNameWithAlias(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn, java.lang.String alias)
Validates if givenValidationCapability
is aDatabaseMetaDataValidation
protected void
validateNameWithAlias(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn, java.lang.String alias, boolean exists, NamedObject... parents)
Validates if givenValidationCapability
is aDatabaseMetaDataValidation
protected <E> void
validateOptional(E element, java.util.function.Consumer<E> elementConsumer)
protected void
validateOptionalColumnName(ValidationCapability capability, java.lang.String name)
protected void
validateOptionalColumnNames(ValidationCapability capability, java.util.List<java.lang.String> columnNames, boolean exists, NamedObject... parents)
protected void
validateOptionalColumnNames(ValidationCapability capability, java.util.List<java.lang.String> columnNames, NamedObject... parents)
protected void
validateOptionalColumnNameWithAlias(ValidationCapability capability, java.lang.String name, java.lang.String alias)
protected void
validateOptionalExpression(Expression expression)
protected void
validateOptionalExpression(Expression expression, ExpressionValidator v)
protected void
validateOptionalExpressions(java.util.List<? extends Expression> expressions)
protected void
validateOptionalFeature(ValidationCapability capability, java.lang.Object element, Feature feature)
Validates for the feature if given element is notnull
protected void
validateOptionalFeature(ValidationCapability capability, java.util.List<?> elements, Feature feature)
validates for the feature if given elements is not empty - seeisNotEmpty(Collection)
protected void
validateOptionalFromItem(FromItem fromItem)
protected void
validateOptionalFromItem(FromItem fromItem, SelectValidator v)
protected void
validateOptionalFromItems(java.util.List<? extends FromItem> fromItems)
protected void
validateOptionalFromItems(FromItem... fromItems)
protected <E,V extends Validator<?>>
voidvalidateOptionalList(java.util.List<E> elementList, java.util.function.Supplier<V> validatorSupplier, java.util.function.BiConsumer<E,V> elementConsumer)
protected void
validateOptionalName(ValidationCapability capability, NamedObject namedObject, java.lang.String name, java.lang.String alias, boolean exists, NamedObject... parents)
protected void
validateOptionalName(ValidationCapability capability, NamedObject namedObject, java.lang.String name, NamedObject... parents)
protected void
validateOptionalNameWithAlias(ValidationCapability capability, NamedObject namedObject, java.lang.String name, java.lang.String alias, NamedObject... parents)
protected void
validateOptionalOrderByElements(java.util.List<OrderByElement> orderByElements)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.jsqlparser.util.validation.Validator
getValidationErrors, getValidationErrors, isValid, isValid, validate
-
-
-
-
Field Detail
-
errors
private final java.util.Map<ValidationCapability,java.util.Set<ValidationException>> errors
-
validatorForwards
private final java.util.Map<java.lang.Class<? extends AbstractValidator<?>>,AbstractValidator<?>> validatorForwards
-
context
private ValidationContext context
-
-
Method Detail
-
getValidator
public <T extends AbstractValidator<?>> T getValidator(java.lang.Class<T> type)
-
newObject
private <E extends Validator<?>> E newObject(java.lang.Class<E> type)
-
getMessageConsumer
protected java.util.function.Consumer<ValidationException> getMessageConsumer(ValidationCapability c)
-
context
protected ValidationContext context()
-
context
protected ValidationContext context(boolean reInit)
-
putError
protected void putError(ValidationCapability capability, ValidationException error)
adds an error for thisValidationCapability
- Parameters:
capability
-error
-
-
getValidationErrors
public final java.util.Map<ValidationCapability,java.util.Set<ValidationException>> getValidationErrors()
- Specified by:
getValidationErrors
in interfaceValidator<S>
- Returns:
- the
ValidationCapability
's requested mapped to a set of error-messages
-
getCapabilities
public java.util.Collection<ValidationCapability> getCapabilities()
-
setContext
public final void setContext(ValidationContext context)
- Specified by:
setContext
in interfaceValidator<S>
-
validateOptional
protected <E> void validateOptional(E element, java.util.function.Consumer<E> elementConsumer)
-
validateOptionalList
protected <E,V extends Validator<?>> void validateOptionalList(java.util.List<E> elementList, java.util.function.Supplier<V> validatorSupplier, java.util.function.BiConsumer<E,V> elementConsumer)
-
validateOptionalExpression
protected void validateOptionalExpression(Expression expression)
-
validateOptionalExpression
protected void validateOptionalExpression(Expression expression, ExpressionValidator v)
-
validateOptionalExpressions
protected void validateOptionalExpressions(java.util.List<? extends Expression> expressions)
-
validateOptionalFromItems
protected void validateOptionalFromItems(FromItem... fromItems)
-
validateOptionalFromItems
protected void validateOptionalFromItems(java.util.List<? extends FromItem> fromItems)
-
validateOptionalOrderByElements
protected void validateOptionalOrderByElements(java.util.List<OrderByElement> orderByElements)
-
validateOptionalFromItem
protected void validateOptionalFromItem(FromItem fromItem)
-
validateOptionalFromItem
protected void validateOptionalFromItem(FromItem fromItem, SelectValidator v)
-
validateFeature
protected void validateFeature(Feature feature)
Iterates through allValidationCapability
and validates the feature withvalidateFeature(ValidationCapability, Feature)
- Parameters:
feature
-
-
validateFeatureAndName
protected void validateFeatureAndName(Feature feature, NamedObject namedObject, java.lang.String fqn)
Iterates through allValidationCapability
and validates- the name with
validateName(ValidationCapability, NamedObject, String)
- the feature with
validateFeature(ValidationCapability, Feature)
- Parameters:
feature
-namedObject
-fqn
- - fully qualified name of named object
- the name with
-
validateFeatureAndNameWithAlias
protected void validateFeatureAndNameWithAlias(Feature feature, NamedObject namedObject, java.lang.String fqn, java.lang.String alias)
Iterates through allValidationCapability
and validates- the name with
validateName(ValidationCapability, NamedObject, String)
- the feature with
validateFeature(ValidationCapability, Feature)
- Parameters:
feature
-namedObject
-fqn
- - fully qualified name of named objectalias
-
- the name with
-
validateName
protected void validateName(NamedObject namedObject, java.lang.String fqn)
Iterates through allValidationCapability
and validates for the name withvalidateName(ValidationCapability, NamedObject, String)
- Parameters:
namedObject
-fqn
- - fully qualified name of named object
-
validateNameWithAlias
protected void validateNameWithAlias(NamedObject namedObject, java.lang.String fqn, java.lang.String alias)
Iterates through allValidationCapability
and validates for the name withvalidateName(ValidationCapability, NamedObject, String)
- Parameters:
namedObject
-fqn
- - fully qualified name of named objectalias
-
-
validateFeature
protected void validateFeature(ValidationCapability capability, boolean condition, Feature feature)
- Parameters:
capability
-condition
-feature
-
-
validateOptionalFeature
protected void validateOptionalFeature(ValidationCapability capability, java.util.List<?> elements, Feature feature)
validates for the feature if given elements is not empty - seeisNotEmpty(Collection)
- Parameters:
capability
-elements
-feature
-
-
validateOptionalFeature
protected void validateOptionalFeature(ValidationCapability capability, java.lang.Object element, Feature feature)
Validates for the feature if given element is notnull
- Parameters:
capability
-element
-feature
-
-
validateFeature
protected void validateFeature(ValidationCapability capability, Feature feature)
Validates if givenValidationCapability
is aFeatureSetValidation
- Parameters:
capability
-feature
-
-
validateNameWithAlias
protected void validateNameWithAlias(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn, java.lang.String alias)
Validates if givenValidationCapability
is aDatabaseMetaDataValidation
- Parameters:
capability
-namedObject
-fqn
- - fully qualified name of named objectalias
-
-
validateName
protected void validateName(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn)
- Parameters:
capability
-namedObject
-fqn
- - fully qualified name of named object
-
validateNameWithAlias
protected void validateNameWithAlias(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn, java.lang.String alias, boolean exists, NamedObject... parents)
Validates if givenValidationCapability
is aDatabaseMetaDataValidation
- Parameters:
capability
-namedObject
-fqn
- - fully qualified name of named objectalias
-exists
- -true
, check for existence,false
, check for non-existence
-
validateName
protected void validateName(ValidationCapability capability, NamedObject namedObject, java.lang.String fqn, boolean exists, NamedObject... parents)
- Parameters:
capability
-namedObject
-fqn
- - fully qualified name of named objectexists
-parents
-
-
validateOptionalColumnName
protected void validateOptionalColumnName(ValidationCapability capability, java.lang.String name)
- Parameters:
capability
-name
-
-
validateOptionalColumnNameWithAlias
protected void validateOptionalColumnNameWithAlias(ValidationCapability capability, java.lang.String name, java.lang.String alias)
- Parameters:
capability
-name
-alias
-
-
validateOptionalColumnNames
protected void validateOptionalColumnNames(ValidationCapability capability, java.util.List<java.lang.String> columnNames, NamedObject... parents)
- Parameters:
capability
-columnNames
-parents
-
-
validateOptionalColumnNames
protected void validateOptionalColumnNames(ValidationCapability capability, java.util.List<java.lang.String> columnNames, boolean exists, NamedObject... parents)
- Parameters:
capability
-columnNames
-exists
-parents
-
-
validateOptionalNameWithAlias
protected void validateOptionalNameWithAlias(ValidationCapability capability, NamedObject namedObject, java.lang.String name, java.lang.String alias, NamedObject... parents)
- Parameters:
capability
-namedObject
-name
-alias
-parents
-
-
validateOptionalName
protected void validateOptionalName(ValidationCapability capability, NamedObject namedObject, java.lang.String name, NamedObject... parents)
- Parameters:
capability
-namedObject
-name
-parents
-
-
validateOptionalName
protected void validateOptionalName(ValidationCapability capability, NamedObject namedObject, java.lang.String name, java.lang.String alias, boolean exists, NamedObject... parents)
- Parameters:
capability
-namedObject
-name
-alias
-exists
-parents
-
-
isNotEmpty
protected boolean isNotEmpty(java.util.Collection<?> c)
-
isNotEmpty
protected boolean isNotEmpty(java.lang.String c)
-
-