This is an automated email from the ASF dual-hosted git repository. asf-gitbox-commits pushed a commit to branch CAY-2935 in repository https://gitbox.apache.org/repos/asf/cayenne.git
commit 25ec4c8e993d181d136da00024bafec12790b8e6 Author: Andrus Adamchik <[email protected]> AuthorDate: Thu May 7 13:31:40 2026 -0400 CAY-2935 Upgrade Cayenne 5.0 to Java 21 syntax upgrade - Modeler switch --- .../apache/cayenne/modeler/log/ModelerLogger.java | 22 +++++--------- .../modeler/toolkit/tree/CheckBoxNodeData.java | 14 ++++----- .../modeler/ui/action/DocumentationAction.java | 13 ++++----- .../cayenne/modeler/ui/logconsole/LogConsole.java | 14 ++++----- .../modeler/ui/preferences/PreferenceDialog.java | 17 ++++------- .../cgen/templateeditor/EditorTemplateLoader.java | 19 ++++-------- .../datamap/dbimport/tree/ColorTreeRenderer.java | 34 ++++++++++------------ .../objentity/callbacks/ObjCallbackMethod.java | 28 +++++++----------- .../ui/project/editor/query/PrefetchModel.java | 30 ++++++++----------- 9 files changed, 75 insertions(+), 116 deletions(-) diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/log/ModelerLogger.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/log/ModelerLogger.java index 1d10d2678..9bd7d9143 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/log/ModelerLogger.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/log/ModelerLogger.java @@ -56,20 +56,14 @@ class ModelerLogger implements Logger { } private String getLevelName(byte level) { - switch (level) { - case LOG_LEVEL_INFO: - return INFO_LOG_NAME; - case LOG_LEVEL_DEBUG: - return DEBUG_LOG_NAME; - case LOG_LEVEL_TRACE: - return TRACE_LOG_NAME; - case LOG_LEVEL_WARN: - return WARN_LOG_NAME; - case LOG_LEVEL_ERROR: - return ERROR_LOG_NAME; - default: - throw new IllegalStateException("Unregistered log level - " + level); - } + return switch (level) { + case LOG_LEVEL_INFO -> INFO_LOG_NAME; + case LOG_LEVEL_DEBUG -> DEBUG_LOG_NAME; + case LOG_LEVEL_TRACE -> TRACE_LOG_NAME; + case LOG_LEVEL_WARN -> WARN_LOG_NAME; + case LOG_LEVEL_ERROR -> ERROR_LOG_NAME; + default -> throw new IllegalStateException("Unregistered log level - " + level); + }; } private boolean isLevelEnabled(int logLevel) { diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/CheckBoxNodeData.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/CheckBoxNodeData.java index 6d3919ea2..9db4c17b0 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/CheckBoxNodeData.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/CheckBoxNodeData.java @@ -43,15 +43,11 @@ public class CheckBoxNodeData { } public CheckBoxNodeData toggleState() { - switch (state) { - case DESELECTED: - case INDETERMINATE: - return withState(State.SELECTED); - case SELECTED: - return withState(State.DESELECTED); - default: - throw new IllegalStateException(); - } + return switch (state) { + case DESELECTED, INDETERMINATE -> withState(State.SELECTED); + case SELECTED -> withState(State.DESELECTED); + default -> throw new IllegalStateException(); + }; } public CheckBoxNodeData withState(State state) { diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/DocumentationAction.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/DocumentationAction.java index df5187aeb..d5aac7a39 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/DocumentationAction.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/DocumentationAction.java @@ -59,13 +59,10 @@ public class DocumentationAction extends AppAction { } // build a major version in form of 'X.Y' String[] components = majorVersion.split("\\."); - switch (components.length) { - case 0: - return ""; - case 1: - return components[0] + ".0"; - default: - return String.join(".", components[0], components[1]); - } + return switch (components.length) { + case 0 -> ""; + case 1 -> components[0] + ".0"; + default -> String.join(".", components[0], components[1]); + }; } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/logconsole/LogConsole.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/logconsole/LogConsole.java index 297388e8d..bc8808be1 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/logconsole/LogConsole.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/logconsole/LogConsole.java @@ -195,12 +195,12 @@ public class LogConsole extends AppPanel implements LogAppender { } private static AttributeSet styleFor(String level) { - switch (level) { - case "ERROR": return ERROR_STYLE; - case "FATAL": return FATAL_STYLE; - case "WARN": return WARN_STYLE; - case "INFO": return INFO_STYLE; - default: return DEBUG_STYLE; - } + return switch (level) { + case "ERROR" -> ERROR_STYLE; + case "FATAL" -> FATAL_STYLE; + case "WARN" -> WARN_STYLE; + case "INFO" -> INFO_STYLE; + default -> DEBUG_STYLE; + }; } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/preferences/PreferenceDialog.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/preferences/PreferenceDialog.java index a94770f7b..e230ca028 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/preferences/PreferenceDialog.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/preferences/PreferenceDialog.java @@ -129,17 +129,12 @@ public class PreferenceDialog extends AppDialog { } private AppPanel panelFor(String cardKey) { - switch (cardKey) { - case DB_CONNECTORS_KEY: - return dbConnectorPrefs; - case CLASSPATH_KEY: - return classpathPrefs; - case MORE_KEY: - return morePrefs; - case GENERAL_KEY: - default: - return generalPrefs; - } + return switch (cardKey) { + case DB_CONNECTORS_KEY -> dbConnectorPrefs; + case CLASSPATH_KEY -> classpathPrefs; + case MORE_KEY -> morePrefs; + default -> generalPrefs; + }; } private void initLayout() { diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/templateeditor/EditorTemplateLoader.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/templateeditor/EditorTemplateLoader.java index 44c7ff8fb..e7bfe373a 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/templateeditor/EditorTemplateLoader.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/templateeditor/EditorTemplateLoader.java @@ -68,19 +68,12 @@ public class EditorTemplateLoader { } private TemplateType switchTypeToSingle(TemplateType type) { - switch (type) { - case ENTITY_SUBCLASS: { - return TemplateType.ENTITY_SINGLE_CLASS; - } - case EMBEDDABLE_SUBCLASS: { - return TemplateType.EMBEDDABLE_SINGLE_CLASS; - } - case DATAMAP_SUBCLASS: { - return TemplateType.DATAMAP_SINGLE_CLASS; - } - default: - throw new IllegalStateException("Illegal template type for singleClass " + type); - } + return switch (type) { + case ENTITY_SUBCLASS -> TemplateType.ENTITY_SINGLE_CLASS; + case EMBEDDABLE_SUBCLASS -> TemplateType.EMBEDDABLE_SINGLE_CLASS; + case DATAMAP_SUBCLASS -> TemplateType.DATAMAP_SINGLE_CLASS; + default -> throw new IllegalStateException("Illegal template type for singleClass " + type); + }; } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/tree/ColorTreeRenderer.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/tree/ColorTreeRenderer.java index 79a2d8cf6..8311a54f9 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/tree/ColorTreeRenderer.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/tree/ColorTreeRenderer.java @@ -206,28 +206,26 @@ public class ColorTreeRenderer extends DbImportTreeCellRenderer { } private Node<?> toLogicalNode(ObjectType type, String value, Node<?> logicalParent) { - switch (type) { - case CATALOG: - return new CatalogNode(value); - case SCHEMA: - return new SchemaNode(value, (CatalogNode)logicalParent); - case TABLE: - if(logicalParent instanceof CatalogNode) { - return new CatalogTableNode(value, (CatalogNode)logicalParent); + return switch (type) { + case CATALOG -> new CatalogNode(value); + case SCHEMA -> new SchemaNode(value, (CatalogNode) logicalParent); + case TABLE -> { + if (logicalParent instanceof CatalogNode cn) { + yield new CatalogTableNode(value, cn); } else { - return new SchemaTableNode(value, (SchemaNode)logicalParent); + yield new SchemaTableNode(value, (SchemaNode) logicalParent); } - case COLUMN: - return new ColumnNode(value, (TableNode<?>) logicalParent); - case PROCEDURE: - if(logicalParent instanceof CatalogNode) { - return new CatalogProcedureNode(value, (CatalogNode)logicalParent); + } + case COLUMN -> new ColumnNode(value, (TableNode<?>) logicalParent); + case PROCEDURE -> { + if (logicalParent instanceof CatalogNode cn) { + yield new CatalogProcedureNode(value, cn); } else { - return new SchemaProcedureNode(value, (SchemaNode)logicalParent); + yield new SchemaProcedureNode(value, (SchemaNode) logicalParent); } - default: - return null; - } + } + default -> null; + }; } private ObjectType getObjectType(Object object) { diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/callbacks/ObjCallbackMethod.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/callbacks/ObjCallbackMethod.java index 8a11646d1..b66483072 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/callbacks/ObjCallbackMethod.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/callbacks/ObjCallbackMethod.java @@ -42,24 +42,16 @@ public class ObjCallbackMethod implements XMLSerializable, } private String encodeCallbackTypeForXML(CallbackType type) { - switch(type.getType()) { - case POST_ADD : - return "post-add"; - case POST_LOAD : - return "post-load"; - case POST_PERSIST : - return "post-persist"; - case POST_REMOVE : - return "post-remove"; - case POST_UPDATE : - return "post-update"; - case PRE_PERSIST : - return "pre-persist"; - case PRE_REMOVE : - return "pre-remove"; - default: - return "pre-update"; - } + return switch (type.getType()) { + case POST_ADD -> "post-add"; + case POST_LOAD -> "post-load"; + case POST_PERSIST -> "post-persist"; + case POST_REMOVE -> "post-remove"; + case POST_UPDATE -> "post-update"; + case PRE_PERSIST -> "pre-persist"; + case PRE_REMOVE -> "pre-remove"; + default -> "pre-update"; + }; } public String getName() { diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/query/PrefetchModel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/query/PrefetchModel.java index f0e4411bb..1891fd54b 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/query/PrefetchModel.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/query/PrefetchModel.java @@ -114,27 +114,21 @@ public class PrefetchModel extends AbstractTableModel { public static int getPrefetchType(String semantics) { //case 2: disjoint isn't use for SQLTemplate prefetch - switch (semantics){ - case "Joint" : - return 1; - case "Disjoint": - return 2; - case "Disjoint by id": - return 3; - default: return 0; - } + return switch (semantics) { + case "Joint" -> 1; + case "Disjoint" -> 2; + case "Disjoint by id" -> 3; + default -> 0; + }; } private static String getPrefetchTypeString(int semantics) { - switch (semantics){ - case 1 : - return SelectQueryPrefetchTab.JOINT_PREFETCH_SEMANTICS; - case 2: - return SelectQueryPrefetchTab.DISJOINT_PREFETCH_SEMANTICS; - case 3: - return SelectQueryPrefetchTab.DISJOINT_BY_ID_PREFETCH_SEMANTICS; - } - return SelectQueryPrefetchTab.UNDEFINED_SEMANTICS; + return switch (semantics) { + case 1 -> SelectQueryPrefetchTab.JOINT_PREFETCH_SEMANTICS; + case 2 -> SelectQueryPrefetchTab.DISJOINT_PREFETCH_SEMANTICS; + case 3 -> SelectQueryPrefetchTab.DISJOINT_BY_ID_PREFETCH_SEMANTICS; + default -> SelectQueryPrefetchTab.UNDEFINED_SEMANTICS; + }; } private boolean isToMany(String prefetch) {
