This is an automated email from the ASF dual-hosted git repository. asf-gitbox-commits pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cayenne.git
commit 516de7900f143b3f229a12fe2f336302147a33f0 Author: Andrus Adamchik <[email protected]> AuthorDate: Mon Jul 20 18:31:10 2026 +0200 cleanup --- cayenne-cgen/pom.xml | 2 +- .../java/org/apache/cayenne/gen/StringUtils.java | 4 +-- .../dbsync/naming/BaseObjectNameGenerator.java | 4 +-- .../project/validation/DataMapValidator.java | 3 +- .../project/validation/DbAttributeValidator.java | 3 +- .../validation/DbRelationshipValidator.java | 3 +- ...ameValidationHelper.java => NameValidator.java} | 32 +++++++++------------- .../project/validation/ObjAttributeValidator.java | 5 ++-- .../project/validation/ObjEntityValidator.java | 10 +++---- .../validation/ObjRelationshipValidator.java | 5 ++-- 10 files changed, 29 insertions(+), 42 deletions(-) diff --git a/cayenne-cgen/pom.xml b/cayenne-cgen/pom.xml index c242e0fb5..b926c79cc 100644 --- a/cayenne-cgen/pom.xml +++ b/cayenne-cgen/pom.xml @@ -32,7 +32,7 @@ <dependencies> <!-- - using org.apache.cayenne.project.validation.NameValidationHelper from cayenne-project + using org.apache.cayenne.project.validation.NameValidator from cayenne-project and org.apache.cayenne.dbsync.filter.NameFilter from cayenne-dbsync --> <dependency> diff --git a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/StringUtils.java b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/StringUtils.java index d9a2277c6..ee281582b 100644 --- a/cayenne-cgen/src/main/java/org/apache/cayenne/gen/StringUtils.java +++ b/cayenne-cgen/src/main/java/org/apache/cayenne/gen/StringUtils.java @@ -19,7 +19,7 @@ package org.apache.cayenne.gen; -import org.apache.cayenne.project.validation.NameValidationHelper; +import org.apache.cayenne.project.validation.NameValidator; import org.apache.cayenne.util.Util; /** @@ -42,7 +42,7 @@ public class StringUtils { * keywords. */ public String formatVariableName(String variableName) { - if (NameValidationHelper.getInstance().isReservedJavaKeyword(variableName)) { + if (NameValidator.isReservedJavaKeyword(variableName)) { return "_" + variableName; } else { diff --git a/cayenne-dbsync/src/main/java/org/apache/cayenne/dbsync/naming/BaseObjectNameGenerator.java b/cayenne-dbsync/src/main/java/org/apache/cayenne/dbsync/naming/BaseObjectNameGenerator.java index b0af9b546..d60aa4db0 100644 --- a/cayenne-dbsync/src/main/java/org/apache/cayenne/dbsync/naming/BaseObjectNameGenerator.java +++ b/cayenne-dbsync/src/main/java/org/apache/cayenne/dbsync/naming/BaseObjectNameGenerator.java @@ -22,7 +22,7 @@ import org.apache.cayenne.map.DbAttribute; import org.apache.cayenne.map.DbEntity; import org.apache.cayenne.map.DbJoin; import org.apache.cayenne.map.DbRelationship; -import org.apache.cayenne.project.validation.NameValidationHelper; +import org.apache.cayenne.project.validation.NameValidator; import org.apache.cayenne.util.Util; import java.util.List; @@ -87,7 +87,7 @@ public abstract class BaseObjectNameGenerator implements ObjectNameGenerator { */ private String fixPersistentBaseProperty(String name, String entityName) { - if (entityName == null || !NameValidationHelper.getInstance().invalidPersistentObjectProperty(name)) { + if (entityName == null || !NameValidator.invalidPersistentProperty(name)) { return name; } diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DataMapValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DataMapValidator.java index bc78578a2..c4931a8ae 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DataMapValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DataMapValidator.java @@ -99,8 +99,7 @@ class DataMapValidator extends ConfigurationNodeValidator<DataMap> { return; } - NameValidationHelper helper = NameValidationHelper.getInstance(); - String invalidChars = helper.invalidCharsInJavaClassName(javaPackage); + String invalidChars = NameValidator.invalidCharsInJavaClassName(javaPackage); if (invalidChars != null) { addFailure(validationResult, map, "DataMap '%s' Java package '%s' contains invalid characters: %s", map.getName(), javaPackage, invalidChars); diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbAttributeValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbAttributeValidator.java index 946c5e796..1f0d6bb0b 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbAttributeValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbAttributeValidator.java @@ -52,9 +52,8 @@ class DbAttributeValidator extends ConfigurationNodeValidator<DbAttribute> { } private void validateName(DbAttribute attribute, ValidationResult validationResult) { - NameValidationHelper helper = NameValidationHelper.getInstance(); String name = attribute.getName(); - String invalidChars = helper.invalidCharsInDbPathComponent(name); + String invalidChars = NameValidator.invalidCharsInDbPathComponent(name); if (Util.isEmptyString(name)) { return; } diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java index a56fc2fd7..c723fea8c 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/DbRelationshipValidator.java @@ -74,8 +74,7 @@ class DbRelationshipValidator extends ConfigurationNodeValidator<DbRelationship> } private void validateName(DbRelationship relationship, ValidationResult validationResult) { - NameValidationHelper helper = NameValidationHelper.getInstance(); - String invalidChars = helper.invalidCharsInDbPathComponent(relationship.getName()); + String invalidChars = NameValidator.invalidCharsInDbPathComponent(relationship.getName()); if (invalidChars != null) { addFailure(validationResult, relationship, "Name of DbRelationship '%s' contains invalid characters: %s", toString(relationship), invalidChars); diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/NameValidationHelper.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/NameValidator.java similarity index 84% rename from cayenne-project/src/main/java/org/apache/cayenne/project/validation/NameValidationHelper.java rename to cayenne-project/src/main/java/org/apache/cayenne/project/validation/NameValidator.java index 427235815..581e7c5e1 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/NameValidationHelper.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/NameValidator.java @@ -25,10 +25,10 @@ import java.util.StringTokenizer; /** * Defines a set of rules for validating java and db mapping identifiers. - * - * @since 1.1 + * + * @since 5.0 */ -public class NameValidationHelper { +public class NameValidator { private static final Collection<String> RESERVED_JAVA_KEYWORDS = List.of( "abstract", @@ -90,16 +90,10 @@ public class NameValidationHelper { "persistenceState", "snapshotVersion"); - static final NameValidationHelper sharedInstance = new NameValidationHelper(); - - /** - * Returns shared instance of the validator. - */ - public static NameValidationHelper getInstance() { - return sharedInstance; + private NameValidator() { } - public boolean isReservedJavaKeyword(String word) { + public static boolean isReservedJavaKeyword(String word) { return RESERVED_JAVA_KEYWORDS.contains(word); } @@ -107,19 +101,19 @@ public class NameValidationHelper { * This is more of a sanity check than a real validation. As different DBs allow * different chars in identifiers, here we simply check for dots. */ - public String invalidCharsInDbPathComponent(String dbPathComponent) { + public static String invalidCharsInDbPathComponent(String dbPathComponent) { return (dbPathComponent.indexOf('.') >= 0) ? "." : null; } /** * Scans a name of ObjAttribute or ObjRelationship for invalid characters. */ - public String invalidCharsInObjPathComponent(String objPathComponent) { + public static String invalidCharsInObjPathComponent(String objPathComponent) { String invalidChars = validateJavaIdentifier(objPathComponent, ""); return (!invalidChars.isEmpty()) ? invalidChars : null; } - public String invalidCharsInJavaClassName(String javaClassName) { + public static String invalidCharsInJavaClassName(String javaClassName) { if (javaClassName == null) { return null; } @@ -134,12 +128,12 @@ public class NameValidationHelper { return !invalidChars.isEmpty() ? invalidChars : null; } - public boolean invalidPersistentObjectClass(String persistentObjectClassFQN) { - if (persistentObjectClassFQN == null) { + public static boolean invalidJavaClassComponents(String classFQN) { + if (classFQN == null) { return true; } - StringTokenizer toks = new StringTokenizer(persistentObjectClassFQN, "."); + StringTokenizer toks = new StringTokenizer(classFQN, "."); while (toks.hasMoreTokens()) { if (RESERVED_JAVA_KEYWORDS.contains(toks.nextToken())) { return true; @@ -149,7 +143,7 @@ public class NameValidationHelper { return false; } - private String validateJavaIdentifier(String id, String invalidChars) { + private static String validateJavaIdentifier(String id, String invalidChars) { // TODO: Java spec seems to allow "$" char in identifiers... // Cayenne expressions do not, so we should probably check for this char presence... @@ -183,7 +177,7 @@ public class NameValidationHelper { * considered invalid if there is a getter or a setter for it in java.lang.Object or * PersistentObject. */ - public boolean invalidPersistentObjectProperty(String persistentObjectProperty) { + public static boolean invalidPersistentProperty(String persistentObjectProperty) { return persistentObjectProperty == null || PERSISTENT_BASE_PROPERTIES.contains(persistentObjectProperty); } diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjAttributeValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjAttributeValidator.java index 9db14bd42..675de643f 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjAttributeValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjAttributeValidator.java @@ -59,15 +59,14 @@ class ObjAttributeValidator extends ConfigurationNodeValidator<ObjAttribute> { } private void validateName(ObjAttribute attribute, ValidationResult validationResult) { - NameValidationHelper helper = NameValidationHelper.getInstance(); - String invalidChars = helper.invalidCharsInObjPathComponent(attribute.getName()); + String invalidChars = NameValidator.invalidCharsInObjPathComponent(attribute.getName()); if (invalidChars != null) { addFailure(validationResult, attribute, "ObjAttribute name '%s' contains invalid characters: %s", attribute.getName(), invalidChars); - } else if (helper.invalidPersistentObjectProperty(attribute.getName())) { + } else if (NameValidator.invalidPersistentProperty(attribute.getName())) { addFailure(validationResult, attribute, "ObjAttribute name '%s' is invalid", attribute.getName()); diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjEntityValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjEntityValidator.java index b44445241..2b33de354 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjEntityValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjEntityValidator.java @@ -109,13 +109,12 @@ class ObjEntityValidator extends ConfigurationNodeValidator<ObjEntity> { return; } - NameValidationHelper helper = NameValidationHelper.getInstance(); - String invalidChars = helper.invalidCharsInJavaClassName(className); + String invalidChars = NameValidator.invalidCharsInJavaClassName(className); if (invalidChars != null) { addFailure(validationResult, entity, "ObjEntity '%s' Java class '%s' contains invalid characters: %s", entity.getName(), className, invalidChars); - } else if (helper.invalidPersistentObjectClass(className)) { + } else if (NameValidator.invalidJavaClassComponents(className)) { addFailure(validationResult, entity, "Java class '%s' of ObjEntity '%s' is a reserved word", className, entity.getName()); } else if (className.indexOf('.') < 0) { @@ -131,13 +130,12 @@ class ObjEntityValidator extends ConfigurationNodeValidator<ObjEntity> { return; // null is Ok } - NameValidationHelper helper = NameValidationHelper.getInstance(); - String invalidChars = helper.invalidCharsInJavaClassName(superClassName); + String invalidChars = NameValidator.invalidCharsInJavaClassName(superClassName); if (invalidChars != null) { addFailure(validationResult, entity, "ObjEntity '%s' Java superclass '%s' contains invalid characters: %s", entity.getName(), superClassName, invalidChars); - } else if (helper.invalidPersistentObjectClass(superClassName)) { + } else if (NameValidator.invalidJavaClassComponents(superClassName)) { addFailure(validationResult, entity, "ObjEntity '%s' Java superclass '%s' is a reserved word", entity.getName(), superClassName); } diff --git a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjRelationshipValidator.java b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjRelationshipValidator.java index 25cebcb5a..ceb13d127 100644 --- a/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjRelationshipValidator.java +++ b/cayenne-project/src/main/java/org/apache/cayenne/project/validation/ObjRelationshipValidator.java @@ -71,13 +71,12 @@ class ObjRelationshipValidator extends ConfigurationNodeValidator<ObjRelationshi } private void validateName(ObjRelationship relationship, ValidationResult validationResult) { - NameValidationHelper helper = NameValidationHelper.getInstance(); - String invalidChars = helper.invalidCharsInObjPathComponent(relationship.getName()); + String invalidChars = NameValidator.invalidCharsInObjPathComponent(relationship.getName()); if (invalidChars != null) { addFailure(validationResult, relationship, "ObjRelationship name '%s' contains invalid characters: %s", toString(relationship), invalidChars); - } else if (helper.invalidPersistentObjectProperty(relationship.getName())) { + } else if (NameValidator.invalidPersistentProperty(relationship.getName())) { addFailure(validationResult, relationship, "ObjRelationship name '%s' is a reserved word", toString(relationship)); }
