This is an automated email from the ASF dual-hosted git repository.
ntimofeev pushed a commit to branch STABLE-4.2
in repository https://gitbox.apache.org/repos/asf/cayenne.git
The following commit(s) were added to refs/heads/STABLE-4.2 by this push:
new 0a6b6d11f Make effectively static list actually static
0a6b6d11f is described below
commit 0a6b6d11f833ffb45e4808b4585c8fe3705cca36
Author: Nikita Timofeev <[email protected]>
AuthorDate: Tue Apr 15 12:00:39 2025 +0400
Make effectively static list actually static
---
.../apache/cayenne/modeler/util/ModelerUtil.java | 101 +++++++++++----------
1 file changed, 52 insertions(+), 49 deletions(-)
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/ModelerUtil.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/ModelerUtil.java
index 47c2c80f2..dacecaad5 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/ModelerUtil.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/ModelerUtil.java
@@ -63,6 +63,57 @@ import org.apache.cayenne.value.Wkt;
*/
public final class ModelerUtil {
+ static final String[] REGISTERED_TYPE_NAMES;
+ static {
+ String[] nonPrimitivesNames = {
+ String.class.getName(),
+ BigDecimal.class.getName(),
+ BigInteger.class.getName(),
+ Boolean.class.getName(),
+ Byte.class.getName(),
+ Character.class.getName(),
+ Date.class.getName(),
+ java.util.Date.class.getName(),
+ Double.class.getName(),
+ Float.class.getName(),
+ Integer.class.getName(),
+ Long.class.getName(),
+ Short.class.getName(),
+ Time.class.getName(),
+ Timestamp.class.getName(),
+ GregorianCalendar.class.getName(),
+ Calendar.class.getName(),
+ UUID.class.getName(),
+ Serializable.class.getName(),
+ Json.class.getName(),
+ Wkt.class.getName(),
+ GeoJson.class.getName(),
+ "java.lang.Character[]",
+ "java.lang.Byte[]",
+ "java.time.LocalDate",
+ "java.time.LocalTime",
+ "java.time.LocalDateTime",
+ "java.time.Duration",
+ "java.time.Period"
+ };
+ Arrays.sort(nonPrimitivesNames);
+
+ String[] primitivesNames = {
+ "boolean", "byte", "byte[]", "char", "char[]", "double",
"float", "int", "long", "short"
+ };
+
+ REGISTERED_TYPE_NAMES = new String[primitivesNames.length +
nonPrimitivesNames.length + 1];
+
+ REGISTERED_TYPE_NAMES[0] = "";
+ System.arraycopy(primitivesNames, 0, REGISTERED_TYPE_NAMES, 1,
primitivesNames.length);
+ System.arraycopy(
+ nonPrimitivesNames,
+ 0,
+ REGISTERED_TYPE_NAMES,
+ primitivesNames.length + 1,
+ nonPrimitivesNames.length);
+ }
+
/**
* Returns the "name" property of the object.
*
@@ -109,55 +160,7 @@ public final class ModelerUtil {
}
public static String[] getRegisteredTypeNames() {
- String[] nonPrimitivesNames = {
- String.class.getName(),
- BigDecimal.class.getName(),
- BigInteger.class.getName(),
- Boolean.class.getName(),
- Byte.class.getName(),
- Character.class.getName(),
- Date.class.getName(),
- java.util.Date.class.getName(),
- Double.class.getName(),
- Float.class.getName(),
- Integer.class.getName(),
- Long.class.getName(),
- Short.class.getName(),
- Time.class.getName(),
- Timestamp.class.getName(),
- GregorianCalendar.class.getName(),
- Calendar.class.getName(),
- UUID.class.getName(),
- Serializable.class.getName(),
- Json.class.getName(),
- Wkt.class.getName(),
- GeoJson.class.getName(),
- "java.lang.Character[]",
- "java.lang.Byte[]",
- "java.time.LocalDate",
- "java.time.LocalTime",
- "java.time.LocalDateTime",
- "java.time.Duration",
- "java.time.Period"
- };
- Arrays.sort(nonPrimitivesNames);
-
- String[] primitivesNames = {
- "boolean", "byte", "byte[]", "char", "char[]", "double",
"float", "int", "long", "short"
- };
-
- String[] finalList = new String[primitivesNames.length +
nonPrimitivesNames.length + 1];
-
- finalList[0] = "";
- System.arraycopy(primitivesNames, 0, finalList, 1,
primitivesNames.length);
- System.arraycopy(
- nonPrimitivesNames,
- 0,
- finalList,
- primitivesNames.length + 1,
- nonPrimitivesNames.length);
-
- return finalList;
+ return REGISTERED_TYPE_NAMES;
}
public static DataNodeDescriptor getNodeLinkedToMap(DataChannelDescriptor
domain, DataMap map) {