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 37ca935988daaff718a1985ee573087e28d74ab9 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 instanceof --- .../modeler/project/ProjectNavigationHistory.java | 32 +++--- .../cayenne/modeler/project/ProjectPrefs.java | 24 ++--- .../apache/cayenne/modeler/toolkit/Renderers.java | 18 ++-- .../cayenne/modeler/toolkit/border/TopBorder.java | 3 +- .../modeler/toolkit/tree/EntityTreeModel.java | 8 +- .../org/apache/cayenne/modeler/ui/MainToolBar.java | 8 +- .../cayenne/modeler/ui/action/FindAction.java | 8 +- .../datamap/cgen/CgenArtefactSelectorPanel.java | 16 +-- .../editor/datamap/dbimport/DbImportTree.java | 12 +-- .../datamap/dbimport/action/DeleteNodeAction.java | 12 +-- .../editor/dbentity/main/PKDBGeneratorPanel.java | 6 +- .../modeler/ui/project/tree/ProjectTree.java | 42 ++++---- .../ui/project/validator/AttributeErrorMsg.java | 12 +-- .../ui/project/validator/RelationshipErrorMsg.java | 12 +-- .../cayenne/modeler/undo/CayenneUndoManager.java | 6 +- .../cayenne/modeler/undo/PasteUndoableEdit.java | 110 +++++++++------------ .../apache/cayenne/wocompat/EOModelProcessor.java | 12 +-- .../wocompat/PropertyListSerialization.java | 6 +- 18 files changed, 157 insertions(+), 190 deletions(-) diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectNavigationHistory.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectNavigationHistory.java index 84787733b..9fd37adb3 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectNavigationHistory.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectNavigationHistory.java @@ -96,22 +96,22 @@ public class ProjectNavigationHistory { } private void replay(ProjectSession session, DisplayEvent e) { - if (e instanceof ObjEntityDisplayEvent) { - session.displayObjEntity((ObjEntityDisplayEvent) e); - } else if (e instanceof DbEntityDisplayEvent) { - session.displayDbEntity((DbEntityDisplayEvent) e); - } else if (e instanceof EmbeddableDisplayEvent) { - session.displayEmbeddable((EmbeddableDisplayEvent) e); - } else if (e instanceof ProcedureDisplayEvent) { - session.displayProcedure((ProcedureDisplayEvent) e); - } else if (e instanceof QueryDisplayEvent) { - session.displayQuery((QueryDisplayEvent) e); - } else if (e instanceof DataMapDisplayEvent) { - session.displayDataMap((DataMapDisplayEvent) e); - } else if (e instanceof DataNodeDisplayEvent) { - session.displayDataNode((DataNodeDisplayEvent) e); - } else if (e instanceof DomainDisplayEvent) { - session.displayDomain((DomainDisplayEvent) e); + if (e instanceof ObjEntityDisplayEvent oe) { + session.displayObjEntity(oe); + } else if (e instanceof DbEntityDisplayEvent de) { + session.displayDbEntity(de); + } else if (e instanceof EmbeddableDisplayEvent ee) { + session.displayEmbeddable(ee); + } else if (e instanceof ProcedureDisplayEvent pe) { + session.displayProcedure(pe); + } else if (e instanceof QueryDisplayEvent qe) { + session.displayQuery(qe); + } else if (e instanceof DataMapDisplayEvent dme) { + session.displayDataMap(dme); + } else if (e instanceof DataNodeDisplayEvent dne) { + session.displayDataNode(dne); + } else if (e instanceof DomainDisplayEvent doe) { + session.displayDomain(doe); } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectPrefs.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectPrefs.java index 038679ec0..ef63ab6a1 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectPrefs.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/project/ProjectPrefs.java @@ -714,18 +714,18 @@ public final class ProjectPrefs extends PreferenceAdapter { } private static String nameOf(ConfigurationNode object) { - if (object instanceof CayenneMapEntry) { - return ((CayenneMapEntry) object).getName(); - } else if (object instanceof DataChannelDescriptor) { - return ((DataChannelDescriptor) object).getName(); - } else if (object instanceof DataNodeDescriptor) { - return ((DataNodeDescriptor) object).getName(); - } else if (object instanceof DataMap) { - return ((DataMap) object).getName(); - } else if (object instanceof Embeddable) { - return ((Embeddable) object).getClassName(); - } else if (object instanceof QueryDescriptor) { - return ((QueryDescriptor) object).getName(); + if (object instanceof CayenneMapEntry cme) { + return cme.getName(); + } else if (object instanceof DataChannelDescriptor dcd) { + return dcd.getName(); + } else if (object instanceof DataNodeDescriptor dnd) { + return dnd.getName(); + } else if (object instanceof DataMap dm) { + return dm.getName(); + } else if (object instanceof Embeddable e) { + return e.getClassName(); + } else if (object instanceof QueryDescriptor qd) { + return qd.getName(); } return ""; } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/Renderers.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/Renderers.java index b459b8815..cb63960d5 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/Renderers.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/Renderers.java @@ -81,12 +81,10 @@ public final class Renderers { * Converts non-String Object used in renderers (currently CayenneMapEntry instances only) to String */ public static String asString(Object obj, MappingNamespace namespace) { - if (obj instanceof CayenneMapEntry) { - CayenneMapEntry mapObject = (CayenneMapEntry) obj; + if (obj instanceof CayenneMapEntry mapObject) { String label = mapObject.getName(); - if (mapObject instanceof Entity) { - Entity<?, ?, ?> entity = (Entity<?, ?, ?>) mapObject; + if (mapObject instanceof Entity<?, ?, ?> entity) { DataMap dataMap = entity.getDataMap(); if (dataMap != null && dataMap != namespace) { @@ -95,8 +93,8 @@ public final class Renderers { } return label; - } else if (obj instanceof DataMap) { - return ((DataMap) obj).getName(); + } else if (obj instanceof DataMap dm) { + return dm.getName(); } return obj == null ? null : String.valueOf(obj); @@ -105,10 +103,10 @@ public final class Renderers { public static String asString(Object object) { if (object == null) { return null; - } else if (object instanceof CayenneMapEntry) { - return ((CayenneMapEntry) object).getName(); - } else if (object instanceof String) { - return (String) object; + } else if (object instanceof CayenneMapEntry cme) { + return cme.getName(); + } else if (object instanceof String s) { + return s; } else { try { // use reflection diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/border/TopBorder.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/border/TopBorder.java index e962c2e70..d1983640d 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/border/TopBorder.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/border/TopBorder.java @@ -61,8 +61,7 @@ public class TopBorder extends AbstractBorder { @Override public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) { - if ((this.thickness > 0) && (g instanceof Graphics2D)) { - Graphics2D g2d = (Graphics2D) g; + if ((this.thickness > 0) && (g instanceof Graphics2D g2d)) { Color oldColor = g2d.getColor(); g2d.setColor(color); diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/EntityTreeModel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/EntityTreeModel.java index c6504538b..f225fa4f4 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/EntityTreeModel.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/tree/EntityTreeModel.java @@ -148,10 +148,10 @@ public class EntityTreeModel implements TreeModel { } private Entity<?,?,?> entityForNonLeafNode(Object node) { - if (node instanceof Entity) { - return (Entity<?,?,?>) node; - } else if (node instanceof Relationship) { - return ((Relationship<?,?,?>) node).getTargetEntity(); + if (node instanceof Entity<?,?,?> e) { + return e; + } else if (node instanceof Relationship<?,?,?> r) { + return r.getTargetEntity(); } String className = (node != null) ? node.getClass().getName() : "null"; diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/MainToolBar.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/MainToolBar.java index ff13f7799..a72076768 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/MainToolBar.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/MainToolBar.java @@ -113,16 +113,16 @@ class MainToolBar extends AppToolBar { @Override public void setBorder(Border b) { Object border = UIManager.get("MainToolBar.border"); - if (border instanceof Border) { - super.setBorder((Border) border); + if (border instanceof Border uiBorder) { + super.setBorder(uiBorder); } } @Override public void setBackground(Color bg) { Object background = UIManager.get("MainToolBar.background"); - if (background instanceof Color) { - super.setBackground((Color) background); + if (background instanceof Color c) { + super.setBackground(c); } } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/FindAction.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/FindAction.java index e420d0061..0003a16b4 100755 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/FindAction.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/action/FindAction.java @@ -335,13 +335,13 @@ public class FindAction extends AppAction { DataMap map = entity.getDataMap(); buildAndSelectTreePath(map, entity, projectView); - if (entity instanceof ObjEntity) { + if (entity instanceof ObjEntity oe) { ObjEntityDisplayEvent event = new ObjEntityDisplayEvent( - projectView.getProjectTreeView(), domain, map, (ObjEntity) entity, true, false); + projectView.getProjectTreeView(), domain, map, oe, true, false); session.displayObjEntity(event); - } else if (entity instanceof DbEntity) { + } else if (entity instanceof DbEntity de) { DbEntityDisplayEvent event = new DbEntityDisplayEvent( - projectView.getProjectTreeView(), domain, map, (DbEntity) entity, true, false); + projectView.getProjectTreeView(), domain, map, de, true, false); session.displayDbEntity(event); } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenArtefactSelectorPanel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenArtefactSelectorPanel.java index 75f28d538..7fd7a5ea9 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenArtefactSelectorPanel.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/cgen/CgenArtefactSelectorPanel.java @@ -178,10 +178,10 @@ public class CgenArtefactSelectorPanel extends JPanel { public JLabel getProblem(Object obj) { String name = null; - if (obj instanceof ObjEntity) { - name = ((ObjEntity) obj).getName(); - } else if (obj instanceof Embeddable) { - name = ((Embeddable) obj).getClassName(); + if (obj instanceof ObjEntity oe) { + name = oe.getName(); + } else if (obj instanceof Embeddable emb) { + name = emb.getClassName(); } ValidationFailure validationFailure = null; @@ -204,11 +204,11 @@ public class CgenArtefactSelectorPanel extends JPanel { public JLabel getItemName(Object obj) { String className; Icon icon; - if (obj instanceof Embeddable) { - className = ((Embeddable) obj).getClassName(); + if (obj instanceof Embeddable emb) { + className = emb.getClassName(); icon = IconFactory.iconForObject(new Embeddable()); - } else if (obj instanceof ObjEntity) { - className = ((ObjEntity) obj).getName(); + } else if (obj instanceof ObjEntity oe) { + className = oe.getName(); icon = IconFactory.iconForObject(new ObjEntity()); } else { className = ((DataMap) obj).getName(); diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTree.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTree.java index 1f1181686..92656c61f 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTree.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTree.java @@ -138,8 +138,7 @@ public class DbImportTree extends JTree { DbImportTreeNode node = (DbImportTreeNode) parent.getChildAt(i); Object userObject = node.getUserObject(); - if (object instanceof Catalog) { - Catalog catalog = (Catalog) object; + if (object instanceof Catalog catalog) { if (!(userObject instanceof Catalog)) { continue; } @@ -150,8 +149,7 @@ public class DbImportTree extends JTree { } } - if (object instanceof Schema) { - Schema schema = (Schema) object; + if (object instanceof Schema schema) { if (!(userObject instanceof Schema)) { continue; } @@ -162,8 +160,7 @@ public class DbImportTree extends JTree { } } - if (object instanceof IncludeTable) { - IncludeTable table = (IncludeTable) object; + if (object instanceof IncludeTable table) { if (!(userObject instanceof IncludeTable)) { continue; } @@ -174,8 +171,7 @@ public class DbImportTree extends JTree { } } - if (object instanceof ExcludeTable) { - ExcludeTable table = (ExcludeTable) object; + if (object instanceof ExcludeTable table) { if (!(userObject instanceof ExcludeTable)) { continue; } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/DeleteNodeAction.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/DeleteNodeAction.java index ffe3a1eb1..0d0d6ab62 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/DeleteNodeAction.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/DeleteNodeAction.java @@ -134,17 +134,13 @@ public class DeleteNodeAction extends TreeManipulationAction { parentElement = selectedElement.getParent(); if (parentElement != null) { Object parentUserObject = parentElement.getUserObject(); - if (parentUserObject instanceof ReverseEngineering) { - ReverseEngineering reverseEngineering = (ReverseEngineering) parentUserObject; + if (parentUserObject instanceof ReverseEngineering reverseEngineering) { deleteChilds(reverseEngineering); - } else if (parentUserObject instanceof Catalog) { - Catalog catalog = (Catalog) parentUserObject; + } else if (parentUserObject instanceof Catalog catalog) { deleteChilds(catalog); - } else if (parentUserObject instanceof Schema) { - Schema schema = (Schema) parentUserObject; + } else if (parentUserObject instanceof Schema schema) { deleteChilds(schema); - } else if (parentUserObject instanceof IncludeTable) { - IncludeTable includeTable = (IncludeTable) parentUserObject; + } else if (parentUserObject instanceof IncludeTable includeTable) { deleteChilds(includeTable); } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKDBGeneratorPanel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKDBGeneratorPanel.java index e07d6a4db..90ad088ef 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKDBGeneratorPanel.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKDBGeneratorPanel.java @@ -113,10 +113,9 @@ public class PKDBGeneratorPanel extends PKGeneratorPanel { // listen for selection changes of the new entity attributes.addItemListener(e -> { Object item = e.getItem(); - if (item instanceof DbAttribute) { + if (item instanceof DbAttribute a) { boolean generated = e.getStateChange() == ItemEvent.SELECTED; - DbAttribute a = (DbAttribute) item; if (a.isGenerated() != generated) { a.setGenerated(generated); @@ -139,8 +138,7 @@ public class PKDBGeneratorPanel extends PKGeneratorPanel { boolean isSelected, boolean cellHasFocus) { - if (value instanceof DbAttribute) { - DbAttribute a = (DbAttribute) value; + if (value instanceof DbAttribute a) { String type = TypesMapping.getSqlNameByType(a.getType()); value = a.getName() + " (" + (type != null ? type : "?") + ")"; } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/tree/ProjectTree.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/tree/ProjectTree.java index a1b1c5d4f..1c84c2ae7 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/tree/ProjectTree.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/tree/ProjectTree.java @@ -204,8 +204,8 @@ public class ProjectTree extends JTree boolean hasFocus) { // unwrap - while (value instanceof DefaultMutableTreeNode) { - value = ((DefaultMutableTreeNode) value).getUserObject(); + while (value instanceof DefaultMutableTreeNode node) { + value = node.getUserObject(); } // String - just return it @@ -214,8 +214,8 @@ public class ProjectTree extends JTree } // Project - return the name of top file - if (value instanceof Project) { - Resource resource = ((Project) value).getConfigurationResource(); + if (value instanceof Project p) { + Resource resource = p.getConfigurationResource(); return (resource != null) ? resource.getURL().getPath() : ""; } @@ -826,62 +826,62 @@ public class ProjectTree extends JTree DataChannelDescriptor domain = (DataChannelDescriptor) session.project().getRootNode(); Object obj = data[data.length - 1]; - if (obj instanceof DataChannelDescriptor) { - session.displayDomain(new DomainDisplayEvent(this, (DataChannelDescriptor) obj)); - } else if (obj instanceof DataMap) { + if (obj instanceof DataChannelDescriptor dcd) { + session.displayDomain(new DomainDisplayEvent(this, dcd)); + } else if (obj instanceof DataMap dm) { if (data.length == 2) { session.displayDataMap(new DataMapDisplayEvent( this, domain, - (DataMap) obj, + dm, (DataNodeDescriptor) data[data.length - 2])); } else if (data.length == 1) { session.displayDataMap(new DataMapDisplayEvent( this, domain, - (DataMap) obj)); + dm)); } - } else if (obj instanceof DataNodeDescriptor) { + } else if (obj instanceof DataNodeDescriptor dnd) { if (data.length == 1) { session.displayDataNode(new DataNodeDisplayEvent( this, domain, - (DataNodeDescriptor) obj)); + dnd)); } - } else if (obj instanceof ObjEntity) { + } else if (obj instanceof ObjEntity oe) { session.displayObjEntity(new ObjEntityDisplayEvent( this, domain, (DataMap) data[data.length - 2], - (ObjEntity) obj, + oe, false, true)); - } else if (obj instanceof DbEntity) { + } else if (obj instanceof DbEntity de) { session.displayDbEntity(new DbEntityDisplayEvent( this, domain, (DataMap) data[data.length - 2], - (DbEntity) obj, + de, false, true)); - } else if (obj instanceof Embeddable) { + } else if (obj instanceof Embeddable emb) { session.displayEmbeddable(new EmbeddableDisplayEvent( this, domain, (DataMap) data[data.length - 2], - (Embeddable) obj)); - } else if (obj instanceof Procedure) { + emb)); + } else if (obj instanceof Procedure proc) { session.displayProcedure(new ProcedureDisplayEvent( this, domain, (DataMap) data[data.length - 2], - (Procedure) obj)); - } else if (obj instanceof QueryDescriptor) { + proc)); + } else if (obj instanceof QueryDescriptor qd) { session.displayQuery(new QueryDisplayEvent( this, domain, (DataMap) data[data.length - 2], - (QueryDescriptor) obj)); + qd)); } scrollPathToVisible(path); diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/AttributeErrorMsg.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/AttributeErrorMsg.java index f2f3a9610..0f31e3cf5 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/AttributeErrorMsg.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/AttributeErrorMsg.java @@ -60,12 +60,12 @@ public class AttributeErrorMsg extends ValidationDisplayHandler { public void displayField(ProjectSession session, JFrame frame) { // must first display entity, and then switch to attribute display .. // so fire twice - if (entity instanceof ObjEntity) { - session.displayObjEntity(new ObjEntityDisplayEvent(frame, domain, map, (ObjEntity) entity)); - session.displayObjAttribute(new ObjAttributeDisplayEvent(frame, domain, map, (ObjEntity) entity, (ObjAttribute) attribute)); - } else if (entity instanceof DbEntity) { - session.displayDbEntity(new DbEntityDisplayEvent(frame, domain, map, (DbEntity) entity)); - session.displayDbAttribute(new DbAttributeDisplayEvent(frame, domain, map, (DbEntity) entity, (DbAttribute) attribute)); + if (entity instanceof ObjEntity oe) { + session.displayObjEntity(new ObjEntityDisplayEvent(frame, domain, map, oe)); + session.displayObjAttribute(new ObjAttributeDisplayEvent(frame, domain, map, oe, (ObjAttribute) attribute)); + } else if (entity instanceof DbEntity de) { + session.displayDbEntity(new DbEntityDisplayEvent(frame, domain, map, de)); + session.displayDbAttribute(new DbAttributeDisplayEvent(frame, domain, map, de, (DbAttribute) attribute)); } } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/RelationshipErrorMsg.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/RelationshipErrorMsg.java index cffe02249..21df2526c 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/RelationshipErrorMsg.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/validator/RelationshipErrorMsg.java @@ -58,12 +58,12 @@ public class RelationshipErrorMsg extends ValidationDisplayHandler { public void displayField(ProjectSession session, JFrame frame) { // must first display entity, and then switch to relationship display .. so fire twice - if (entity instanceof ObjEntity) { - session.displayObjEntity(new ObjEntityDisplayEvent(frame, domain, map, (ObjEntity) entity)); - session.displayObjRelationship(new ObjRelationshipDisplayEvent(frame, domain, map, (ObjEntity) entity, (ObjRelationship) rel)); - } else if (entity instanceof DbEntity) { - session.displayDbEntity(new DbEntityDisplayEvent(frame, domain, map, (DbEntity) entity)); - session.displayDbRelationship(new DbRelationshipDisplayEvent(frame, domain, map, (DbEntity) entity, (DbRelationship) rel)); + if (entity instanceof ObjEntity oe) { + session.displayObjEntity(new ObjEntityDisplayEvent(frame, domain, map, oe)); + session.displayObjRelationship(new ObjRelationshipDisplayEvent(frame, domain, map, oe, (ObjRelationship) rel)); + } else if (entity instanceof DbEntity de) { + session.displayDbEntity(new DbEntityDisplayEvent(frame, domain, map, de)); + session.displayDbRelationship(new DbRelationshipDisplayEvent(frame, domain, map, de, (DbRelationship) rel)); } } } diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/CayenneUndoManager.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/CayenneUndoManager.java index cecdef36e..d3e5e6117 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/CayenneUndoManager.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/CayenneUndoManager.java @@ -53,8 +53,7 @@ public class CayenneUndoManager extends UndoManager { public void redo() throws CannotRedoException { UndoableEdit e = editToBeRedone(); - if (e instanceof TextCompoundEdit) { - TextCompoundEdit edit = (TextCompoundEdit) e; + if (e instanceof TextCompoundEdit edit) { edit.watchCaretPosition(); @@ -72,8 +71,7 @@ public class CayenneUndoManager extends UndoManager { public void undo() throws CannotUndoException { UndoableEdit e = editToBeUndone(); - if (e instanceof TextCompoundEdit) { - TextCompoundEdit edit = (TextCompoundEdit) e; + if (e instanceof TextCompoundEdit edit) { edit.watchCaretPosition(); diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/PasteUndoableEdit.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/PasteUndoableEdit.java index 029668b0b..da3766fda 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/PasteUndoableEdit.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/undo/PasteUndoableEdit.java @@ -93,82 +93,66 @@ public class PasteUndoableEdit extends CayenneUndoableEdit { RemoveProcedureParameterAction rProcedureParamAction = globalActions .getAction(RemoveProcedureParameterAction.class); - if (content instanceof DataMap) { + if (content instanceof DataMap dataMap) { if (where instanceof DataChannelDescriptor) { - rAction.removeDataMap((DataMap) content); - } else if (where instanceof DataNodeDescriptor) { - rAction.removeDataMapFromDataNode( - (DataNodeDescriptor) where, - (DataMap) content); + rAction.removeDataMap(dataMap); + } else if (where instanceof DataNodeDescriptor whereNode) { + rAction.removeDataMapFromDataNode(whereNode, dataMap); } } else if (where instanceof DataMap) { - if (content instanceof DbEntity) { - rAction.removeDbEntity(map, (DbEntity) content); - } else if (content instanceof ObjEntity) { - rAction.removeObjEntity(map, (ObjEntity) content); - } else if (content instanceof Embeddable) { - rAction.removeEmbeddable(map, (Embeddable) content); - } else if (content instanceof QueryDescriptor) { - rAction.removeQuery(map, (QueryDescriptor) content); - } else if (content instanceof Procedure) { - rAction.removeProcedure(map, (Procedure) content); + if (content instanceof DbEntity dbEntity) { + rAction.removeDbEntity(map, dbEntity); + } else if (content instanceof ObjEntity objEntity) { + rAction.removeObjEntity(map, objEntity); + } else if (content instanceof Embeddable embeddable) { + rAction.removeEmbeddable(map, embeddable); + } else if (content instanceof QueryDescriptor queryDescriptor) { + rAction.removeQuery(map, queryDescriptor); + } else if (content instanceof Procedure proc) { + rAction.removeProcedure(map, proc); } - } else if (where instanceof DbEntity) { - if (content instanceof DbEntity) { - rAction.removeDbEntity(map, (DbEntity) content); - } else if (content instanceof DbAttribute) { + } else if (where instanceof DbEntity dbEntityWhere) { + if (content instanceof DbEntity dbEntity) { + rAction.removeDbEntity(map, dbEntity); + } else if (content instanceof DbAttribute dbAttribute) { rAttributeAction.removeDbAttributes( map, - (DbEntity) where, - new DbAttribute[] { - (DbAttribute) content - }); - } else if (content instanceof DbRelationship) { + dbEntityWhere, + new DbAttribute[] { dbAttribute }); + } else if (content instanceof DbRelationship dbRelationship) { rRelationShipAction.removeDbRelationships( - (DbEntity) where, - new DbRelationship[] { - (DbRelationship) content - }); + dbEntityWhere, + new DbRelationship[] { dbRelationship }); } - } else if (where instanceof ObjEntity) { - if (content instanceof ObjEntity) { - rAction.removeObjEntity(map, (ObjEntity) content); - } else if (content instanceof ObjAttribute) { + } else if (where instanceof ObjEntity objEntityWhere) { + if (content instanceof ObjEntity objEntity) { + rAction.removeObjEntity(map, objEntity); + } else if (content instanceof ObjAttribute objAttribute) { rAttributeAction.removeObjAttributes( - (ObjEntity) where, - new ObjAttribute[] { - (ObjAttribute) content - }); - } else if (content instanceof ObjRelationship) { + objEntityWhere, + new ObjAttribute[] { objAttribute }); + } else if (content instanceof ObjRelationship objRelationship) { rRelationShipAction.removeObjRelationships( - (ObjEntity) where, - new ObjRelationship[] { - (ObjRelationship) content - }); - } else if (content instanceof ObjCallbackMethod) { - ObjCallbackMethod[] methods = new ObjCallbackMethod[] { - (ObjCallbackMethod) content }; - for(ObjCallbackMethod callbackMethod : methods) { - rCallbackMethodAction.removeCallbackMethod( - methods[0].getCallbackType(), - callbackMethod.getName()); - } + objEntityWhere, + new ObjRelationship[] { objRelationship }); + } else if (content instanceof ObjCallbackMethod callbackMethod) { + rCallbackMethodAction.removeCallbackMethod( + callbackMethod.getCallbackType(), + callbackMethod.getName()); } - } else if (where instanceof Procedure) { - final Procedure procedure = (Procedure) where; - if (content instanceof ProcedureParameter) { + } else if (where instanceof Procedure whereProcedure) { + if (content instanceof ProcedureParameter param) { rProcedureParamAction.removeProcedureParameters( - procedure, - new ProcedureParameter[] { - (ProcedureParameter) content - }); + whereProcedure, + new ProcedureParameter[] { param }); } - } else if (where instanceof Embeddable) { - if (content instanceof Embeddable) { - rAction.removeEmbeddable(map, (Embeddable) content); - } else if (content instanceof EmbeddableAttribute) { - rAttributeAction.removeEmbeddableAttributes((Embeddable) where, - new EmbeddableAttribute[]{(EmbeddableAttribute) content}); + } else if (where instanceof Embeddable embeddableWhere) { + if (content instanceof Embeddable embeddable) { + rAction.removeEmbeddable(map, embeddable); + } else if (content instanceof EmbeddableAttribute embeddableAttribute) { + rAttributeAction.removeEmbeddableAttributes( + embeddableWhere, + new EmbeddableAttribute[]{ embeddableAttribute }); } } } diff --git a/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java b/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java index 3947f5714..bb7fca52f 100644 --- a/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java +++ b/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java @@ -238,9 +238,9 @@ public class EOModelProcessor { Object fetchLimit = plistMap.get("fetchLimit"); if (fetchLimit != null) { try { - if (fetchLimit instanceof Number) { + if (fetchLimit instanceof Number n) { descriptor.setProperty(QueryMetadata.FETCH_LIMIT_PROPERTY, - String.valueOf(((Number) fetchLimit).intValue())); + String.valueOf(n.intValue())); } else if (isNumeric(fetchLimit.toString())) { descriptor.setProperty(QueryMetadata.FETCH_LIMIT_PROPERTY, fetchLimit.toString()); } @@ -293,9 +293,9 @@ public class EOModelProcessor { Object fetchLimit = plistMap.get("fetchLimit"); if (fetchLimit != null) { try { - if (fetchLimit instanceof Number) { + if (fetchLimit instanceof Number n) { descriptor.setProperty(QueryMetadata.FETCH_LIMIT_PROPERTY, - String.valueOf(((Number) fetchLimit).intValue())); + String.valueOf(n.intValue())); } else if (isNumeric(fetchLimit.toString())) { descriptor.setProperty(QueryMetadata.FETCH_LIMIT_PROPERTY, fetchLimit.toString()); } @@ -550,8 +550,8 @@ public class EOModelProcessor { } // per CAY-752, value can be a String or a Number, so handle both - if (value instanceof Number) { - return ((Number) value).intValue(); + if (value instanceof Number n) { + return n.intValue(); } else { try { return Integer.parseInt(value.toString()); diff --git a/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/PropertyListSerialization.java b/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/PropertyListSerialization.java index 655ac07d4..197686bae 100644 --- a/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/PropertyListSerialization.java +++ b/modeler/cayenne-wocompat/src/main/java/org/apache/cayenne/wocompat/PropertyListSerialization.java @@ -120,8 +120,7 @@ public class PropertyListSerialization { return; } - if (plist instanceof Collection) { - Collection list = (Collection) plist; + if (plist instanceof Collection list) { out.write('\n'); out.write(offset); @@ -153,8 +152,7 @@ public class PropertyListSerialization { out.write('\n'); out.write(offset); out.write(')'); - } else if (plist instanceof Map) { - Map map = (Map) plist; + } else if (plist instanceof Map map) { out.write('\n'); out.write(offset);
