Class DefaultModelValidator
java.lang.Object
org.apache.maven.internal.impl.model.DefaultModelValidator
- All Implemented Interfaces:
ModelValidator
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final recordprivate static class -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringprivate static final Stringprivate static final Patternprivate static final Patternprivate static final Stringprivate static final Stringprivate static final StringFields inherited from interface org.apache.maven.api.services.model.ModelValidator
VALIDATION_LEVEL_MAVEN_2_0, VALIDATION_LEVEL_MAVEN_3_0, VALIDATION_LEVEL_MAVEN_3_1, VALIDATION_LEVEL_MAVEN_4_0, VALIDATION_LEVEL_MINIMAL, VALIDATION_LEVEL_STRICT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidaddViolation(ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String fieldName, String sourceHint, String message, InputLocationTracker tracker) private static Longprivate static intcompareModelVersions(String first, String second) Compares two model versions.private static booleanprivate static InputLocationgetLocation(String fieldName, InputLocationTracker tracker) private static BuilderProblem.SeveritygetSeverity(int validationLevel, int errorThreshold) private booleanhasExpression(String value) private booleanhasProjectExpression(String value) private booleanprivate booleanisValidCoordinatesIdCharacter(char c) private booleanprivate booleanprivate booleanprivate voidvalidate20EffectivePluginDependencies(ModelProblemCollector problems, Plugin plugin, int validationLevel) private voidvalidate20EffectiveRepository(ModelProblemCollector problems, Repository repository, String prefix, int validationLevel) private booleanvalidate20PluginVersion(String fieldName, ModelProblemCollector problems, String string, String sourceHint, InputLocationTracker tracker, int validationLevel) private booleanvalidate20ProperSnapshotVersion(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) private voidvalidate20RawDependencies(ModelProblemCollector problems, List<Dependency> dependencies, String prefix, String prefix2, boolean is41OrBeyond, int validationLevel) private voidvalidate20RawDependenciesSelfReferencing(ModelProblemCollector problems, Model m, List<Dependency> dependencies, String prefix) private voidvalidate20RawPlugins(ModelProblemCollector problems, List<Plugin> plugins, String prefix, String prefix2, int validationLevel) private voidvalidate20RawResources(ModelProblemCollector problems, List<Resource> resources, String prefix, int validationLevel) private voidvalidate30RawProfileActivation(ModelProblemCollector problems, Activation activation, String prefix) private booleanvalidateBannedCharacters(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker, String banned) private booleanvalidateBoolean(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) private booleanvalidateCoordinatesId(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String id, String sourceHint, InputLocationTracker tracker) private booleanvalidateCoordinatesId(String fieldName, ModelProblemCollector problems, String id, InputLocationTracker tracker) private booleanvalidateCoordinatesIdWithWildcards(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String id, String sourceHint, InputLocationTracker tracker) protected voidvalidateDependencyVersion(ModelProblemCollector problems, Dependency d, String prefix) private voidvalidateEffectiveDependencies(ModelProblemCollector problems, Model m, List<Dependency> dependencies, boolean management, int validationLevel) private voidvalidateEffectiveDependency(ModelProblemCollector problems, Dependency d, boolean management, String prefix, int validationLevel) voidvalidateEffectiveModel(Model m, int validationLevel, ModelProblemCollector problems) Checks the specified (effective) model for missing or invalid values.private voidvalidateEffectiveModelAgainstDependency(String prefix, ModelProblemCollector problems, Model m, Dependency d) private booleanvalidateEnum(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker, String... validValues) voidvalidateFileModel(Model m, int validationLevel, ModelProblemCollector problems) Checks the specified file model for missing or invalid values.private booleanvalidateModelVersion(ModelProblemCollector problems, String string, InputLocationTracker tracker, List<String> validVersions) private booleanvalidateNotNull(String prefix, String prefix2, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, Object object, String sourceHint, InputLocationTracker tracker) Asserts:private booleanvalidateNotNull(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, Object object, String sourceHint, InputLocationTracker tracker) Asserts:private booleanvalidateProfileId(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String id, String sourceHint, InputLocationTracker tracker) voidvalidateRawModel(Model m, int validationLevel, ModelProblemCollector problems) Checks the specified (raw) model for missing or invalid values.private voidvalidateRawRepositories(ModelProblemCollector problems, List<Repository> repositories, String prefix, String prefix2, int validationLevel) private booleanvalidateStringNoExpression(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, InputLocationTracker tracker) private booleanvalidateStringNotEmpty(String prefix, String prefix2, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) Asserts:private booleanvalidateStringNotEmpty(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) Asserts:private booleanvalidateStringNotEmpty(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, InputLocationTracker tracker) private booleanvalidateVersion(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) private booleanvalidateVersionNoExpression(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, InputLocationTracker tracker)
-
Field Details
-
BUILD_ALLOW_EXPRESSION_IN_EFFECTIVE_PROJECT_VERSION
- See Also:
-
VALID_MODEL_VERSIONS
-
EXPRESSION_NAME_PATTERN
-
EXPRESSION_PROJECT_NAME_PATTERN
-
ILLEGAL_FS_CHARS
- See Also:
-
ILLEGAL_VERSION_CHARS
- See Also:
-
ILLEGAL_REPO_ID_CHARS
- See Also:
-
EMPTY
- See Also:
-
validCoordinatesIds
-
validProfileIds
-
-
Constructor Details
-
DefaultModelValidator
-
-
Method Details
-
validateFileModel
Description copied from interface:ModelValidatorChecks the specified file model for missing or invalid values. This model is directly created from the POM file and has not been subjected to inheritance, interpolation or profile/default injection.- Specified by:
validateFileModelin interfaceModelValidator- Parameters:
m- The model to validate, must not benull.validationLevel- The validation level.problems- The container used to collect problems that were encountered, must not benull.
-
validateRawModel
Description copied from interface:ModelValidatorChecks the specified (raw) model for missing or invalid values. The raw model is the file model + buildpom filter transformation and has not been subjected to inheritance, interpolation or profile/default injection.- Specified by:
validateRawModelin interfaceModelValidator- Parameters:
m- The model to validate, must not benull.validationLevel- The validation level.problems- The container used to collect problems that were encountered, must not benull.
-
validate30RawProfileActivation
private void validate30RawProfileActivation(ModelProblemCollector problems, Activation activation, String prefix) -
validate20RawPlugins
private void validate20RawPlugins(ModelProblemCollector problems, List<Plugin> plugins, String prefix, String prefix2, int validationLevel) -
validateEffectiveModel
Description copied from interface:ModelValidatorChecks the specified (effective) model for missing or invalid values. The effective model is fully assembled and has undergone inheritance, interpolation and other model operations.- Specified by:
validateEffectiveModelin interfaceModelValidator- Parameters:
m- The model to validate, must not benull.validationLevel- The validation level.problems- The container used to collect problems that were encountered, must not benull.
-
validate20RawDependencies
private void validate20RawDependencies(ModelProblemCollector problems, List<Dependency> dependencies, String prefix, String prefix2, boolean is41OrBeyond, int validationLevel) -
validate20RawDependenciesSelfReferencing
private void validate20RawDependenciesSelfReferencing(ModelProblemCollector problems, Model m, List<Dependency> dependencies, String prefix) -
validateEffectiveDependencies
private void validateEffectiveDependencies(ModelProblemCollector problems, Model m, List<Dependency> dependencies, boolean management, int validationLevel) -
validateEffectiveModelAgainstDependency
private void validateEffectiveModelAgainstDependency(String prefix, ModelProblemCollector problems, Model m, Dependency d) -
validate20EffectivePluginDependencies
private void validate20EffectivePluginDependencies(ModelProblemCollector problems, Plugin plugin, int validationLevel) -
validateEffectiveDependency
private void validateEffectiveDependency(ModelProblemCollector problems, Dependency d, boolean management, String prefix, int validationLevel) -
validateDependencyVersion
protected void validateDependencyVersion(ModelProblemCollector problems, Dependency d, String prefix) - Since:
- 3.2.4
-
validateRawRepositories
private void validateRawRepositories(ModelProblemCollector problems, List<Repository> repositories, String prefix, String prefix2, int validationLevel) -
validate20EffectiveRepository
private void validate20EffectiveRepository(ModelProblemCollector problems, Repository repository, String prefix, int validationLevel) -
validate20RawResources
private void validate20RawResources(ModelProblemCollector problems, List<Resource> resources, String prefix, int validationLevel) -
validateCoordinatesId
private boolean validateCoordinatesId(String fieldName, ModelProblemCollector problems, String id, InputLocationTracker tracker) -
validateCoordinatesId
private boolean validateCoordinatesId(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String id, String sourceHint, InputLocationTracker tracker) -
isValidCoordinatesId
-
isValidCoordinatesIdCharacter
private boolean isValidCoordinatesIdCharacter(char c) -
validateProfileId
private boolean validateProfileId(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String id, String sourceHint, InputLocationTracker tracker) -
isValidProfileId
-
validateCoordinatesIdWithWildcards
private boolean validateCoordinatesIdWithWildcards(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String id, String sourceHint, InputLocationTracker tracker) -
isValidCoordinatesIdWithWildCards
-
isValidCoordinatesIdWithWildCardCharacter
private boolean isValidCoordinatesIdWithWildCardCharacter(char c) -
validateStringNoExpression
private boolean validateStringNoExpression(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, InputLocationTracker tracker) -
validateVersionNoExpression
private boolean validateVersionNoExpression(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, InputLocationTracker tracker) -
hasExpression
-
hasProjectExpression
-
validateStringNotEmpty
private boolean validateStringNotEmpty(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, InputLocationTracker tracker) -
validateStringNotEmpty
private boolean validateStringNotEmpty(String prefix, String prefix2, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) Asserts:string != nullstring.length > 0
-
validateStringNotEmpty
private boolean validateStringNotEmpty(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) Asserts:string != nullstring.length > 0
-
validateNotNull
private boolean validateNotNull(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, Object object, String sourceHint, InputLocationTracker tracker) Asserts:string != null
-
validateNotNull
private boolean validateNotNull(String prefix, String prefix2, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, Object object, String sourceHint, InputLocationTracker tracker) Asserts:string != null
-
validateBoolean
private boolean validateBoolean(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) -
validateEnum
private boolean validateEnum(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker, String... validValues) -
validateModelVersion
private boolean validateModelVersion(ModelProblemCollector problems, String string, InputLocationTracker tracker, List<String> validVersions) -
compareModelVersions
Compares two model versions.- Parameters:
first- the first version.second- the second version.- Returns:
- negative if the first version is newer than the second version, zero if they are the same or positive if the second version is the newer.
-
asLong
-
validateBannedCharacters
private boolean validateBannedCharacters(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker, String banned) -
validateVersion
private boolean validateVersion(String prefix, String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) -
validate20ProperSnapshotVersion
private boolean validate20ProperSnapshotVersion(String fieldName, ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String string, String sourceHint, InputLocationTracker tracker) -
validate20PluginVersion
private boolean validate20PluginVersion(String fieldName, ModelProblemCollector problems, String string, String sourceHint, InputLocationTracker tracker, int validationLevel) -
addViolation
private static void addViolation(ModelProblemCollector problems, BuilderProblem.Severity severity, ModelProblem.Version version, String fieldName, String sourceHint, String message, InputLocationTracker tracker) -
getLocation
-
equals
-
getSeverity
-