You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2019/07/10 12:36:24 UTC
[maven] 02/04: [MNG-6702] Improve DefaultModelValidator speed:
Cache valid ids
This is an automated email from the ASF dual-hosted git repository.
michaelo pushed a commit to branch MNG-6702
in repository https://gitbox.apache.org/repos/asf/maven.git
commit fa11ac6cbb37546ef9bf9a6b7b9466db5e049f97
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Sun Jul 7 23:04:49 2019 +0200
[MNG-6702] Improve DefaultModelValidator speed: Cache valid ids
---
.../org/apache/maven/model/validation/DefaultModelValidator.java | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java b/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
index e14838d..ca5ed20 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
@@ -84,6 +84,8 @@ public class DefaultModelValidator
private static final String EMPTY = "";
+ private final Set<String> validIds = new HashSet<>();
+
@Override
public void validateRawModel( Model m, ModelBuildingRequest request, ModelProblemCollector problems )
{
@@ -825,6 +827,10 @@ public class DefaultModelValidator
private boolean validateId( String prefix, String fieldName, ModelProblemCollector problems, Severity severity,
Version version, String id, String sourceHint, InputLocationTracker tracker )
{
+ if ( validIds.contains( id ) )
+ {
+ return true;
+ }
if ( !validateStringNotEmpty( prefix, fieldName, problems, severity, version, id, sourceHint, tracker ) )
{
return false;
@@ -837,6 +843,7 @@ public class DefaultModelValidator
"with value '" + id + "' does not match a valid id pattern.", tracker );
return false;
}
+ validIds.add( id );
return true;
}
}