This is an automated email from the ASF dual-hosted git repository.

aadamchik pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git


The following commit(s) were added to refs/heads/master by this push:
     new 54f74b1d5 CAY-2918 Remove OGNL Binding Architecture from CayenneModeler
54f74b1d5 is described below

commit 54f74b1d5916d007f96a9e9df26643a6e6118d51
Author: Andrus Adamchik <[email protected]>
AuthorDate: Sun Apr 12 13:59:26 2026 -0400

    CAY-2918 Remove OGNL Binding Architecture from CayenneModeler
    
    getting rid of "bindToAction"
---
 .../modeler/dialog/ValidationResultBrowser.java    |  6 +--
 .../InferRelationshipsController.java              | 13 ++-----
 .../InferRelationshipsTabController.java           |  2 +-
 .../dialog/datamap/LockingUpdateController.java    |  9 +----
 .../modeler/dialog/db/DataSourceWizard.java        |  6 +--
 .../modeler/dialog/db/gen/DBGeneratorOptions.java  |  6 +--
 .../dialog/db/gen/TableSelectorController.java     |  4 +-
 .../modeler/dialog/db/merge/MergerOptions.java     |  6 +--
 .../db/merge/MergerTokenSelectorController.java    |  9 +----
 .../dialog/objentity/ObjAttributeInfoDialog.java   |  8 ++--
 .../modeler/dialog/pref/DataSourceCreator.java     |  8 +---
 .../modeler/dialog/pref/DataSourceDuplicator.java  |  8 +---
 .../modeler/dialog/pref/DataSourcePreferences.java |  8 ++--
 .../cgen/CgenArtefactSelectorController.java       |  3 +-
 .../modeler/editor/cgen/CgenConfigController.java  |  9 ++---
 .../modeler/editor/cgen/CgenController.java        | 14 ++-----
 .../templateeditor/TemplateEditorController.java   | 43 ++++++++++------------
 .../editor/datanode/JDBCDataSourceEditor.java      |  2 +-
 .../editor/datanode/MainDataNodeEditor.java        |  2 +-
 19 files changed, 62 insertions(+), 104 deletions(-)

diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ValidationResultBrowser.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ValidationResultBrowser.java
index 7177f3783..3064c919d 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ValidationResultBrowser.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/ValidationResultBrowser.java
@@ -21,7 +21,6 @@
 package org.apache.cayenne.modeler.dialog;
 
 import org.apache.cayenne.modeler.util.CayenneController;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.apache.cayenne.validation.ValidationFailure;
 import org.apache.cayenne.validation.ValidationResult;
 
@@ -44,10 +43,7 @@ public class ValidationResultBrowser extends 
CayenneController {
     }
 
     protected void initController() {
-        BindingBuilder builder = new BindingBuilder(
-                getApplication().getBindingFactory(),
-                this);
-        builder.bindToAction(view.getCloseButton(), "closeDialogAction()");
+        view.getCloseButton().addActionListener(e -> closeDialogAction());
     }
 
     public Component getView() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsController.java
index 9d292227a..44c574b35 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsController.java
@@ -38,7 +38,6 @@ import 
org.apache.cayenne.modeler.undo.CreateRelationshipUndoableEdit;
 import org.apache.cayenne.modeler.undo.InferRelationshipsUndoableEdit;
 import org.apache.cayenne.modeler.util.CayenneController;
 import org.apache.cayenne.modeler.util.NameGeneratorPreferences;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -105,14 +104,10 @@ public class InferRelationshipsController extends 
InferRelationshipsControllerBa
     }
 
     protected void initBindings() {
-        BindingBuilder builder = new BindingBuilder(
-                getApplication().getBindingFactory(),
-                this);
-
-        builder.bindToAction(view.getCancelButton(), "cancelAction()");
-        builder.bindToAction(view.getGenerateButton(), "generateAction()");
-        builder.bindToAction(this, "entitySelectedAction()", 
SELECTED_PROPERTY);
-        builder.bindToAction(view.getStrategyCombo(), "strategyComboAction()");
+        view.getCancelButton().addActionListener(e -> cancelAction());
+        view.getGenerateButton().addActionListener(e -> generateAction());
+        addPropertyChangeListener(SELECTED_PROPERTY, evt -> 
entitySelectedAction());
+        view.getStrategyCombo().addActionListener(e -> strategyComboAction());
     }
 
     public void entitySelectedAction() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsTabController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsTabController.java
index 7cf52c473..cf4ef657c 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsTabController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/autorelationship/InferRelationshipsTabController.java
@@ -52,7 +52,7 @@ public class InferRelationshipsTabController extends 
CayenneController {
         BindingBuilder builder = new BindingBuilder(
                 getApplication().getBindingFactory(),
                 this);
-        builder.bindToAction(view.getCheckAll(), "checkAllAction()");
+        view.getCheckAll().addActionListener(e -> checkAllAction());
 
         TableBindingBuilder tableBuilder = new TableBindingBuilder(builder);
 
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/datamap/LockingUpdateController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/datamap/LockingUpdateController.java
index 72c5ae984..7d8a22ac3 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/datamap/LockingUpdateController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/datamap/LockingUpdateController.java
@@ -30,7 +30,6 @@ import org.apache.cayenne.map.event.EntityEvent;
 import org.apache.cayenne.map.event.RelationshipEvent;
 import org.apache.cayenne.modeler.ProjectController;
 import org.apache.cayenne.modeler.util.CayenneController;
-import org.apache.cayenne.swing.BindingBuilder;
 
 public class LockingUpdateController extends CayenneController {
 
@@ -63,12 +62,8 @@ public class LockingUpdateController extends 
CayenneController {
     }
 
     protected void initBindings() {
-        BindingBuilder builder = new BindingBuilder(
-                getApplication().getBindingFactory(),
-                this);
-
-        builder.bindToAction(view.getCancelButton(), "cancelAction()");
-        builder.bindToAction(view.getUpdateButton(), "updateAction()");
+        view.getCancelButton().addActionListener(e -> cancelAction());
+        view.getUpdateButton().addActionListener(e -> updateAction());
     }
 
     public void cancelAction() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizard.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizard.java
index 9ad45a42b..6986516fa 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizard.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizard.java
@@ -96,9 +96,9 @@ public class DataSourceWizard extends CayenneController {
 
                dataSourceBinding = 
builder.bindToComboSelection(view.getDataSources(), "dataSourceKey");
 
-               builder.bindToAction(view.getCancelButton(), "cancelAction()");
-               builder.bindToAction(view.getOkButton(), "okAction()");
-               builder.bindToAction(view.getConfigButton(), 
"dataSourceConfigAction()");
+               view.getCancelButton().addActionListener(e -> cancelAction());
+               view.getOkButton().addActionListener(e -> okAction());
+               view.getConfigButton().addActionListener(e -> 
dataSourceConfigAction());
        }
 
        private void initDataSourceListener() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/DBGeneratorOptions.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/DBGeneratorOptions.java
index ebbce5a3d..beb800374 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/DBGeneratorOptions.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/DBGeneratorOptions.java
@@ -142,9 +142,9 @@ public class DBGeneratorOptions extends CayenneController {
                 "generatorDefaults.dropTables",
                 "refreshSQLAction()");
 
-        builder.bindToAction(view.getGenerateButton(), 
"generateSchemaAction()");
-        builder.bindToAction(view.getSaveSqlButton(), "storeSQLAction()");
-        builder.bindToAction(view.getCancelButton(), "closeAction()");
+        view.getGenerateButton().addActionListener(e -> 
generateSchemaAction());
+        view.getSaveSqlButton().addActionListener(e -> storeSQLAction());
+        view.getCancelButton().addActionListener(e -> closeAction());
 
         // refresh SQL if different tables were selected
         view.getTabs().addChangeListener(new ChangeListener() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/TableSelectorController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/TableSelectorController.java
index 35806eab3..816feb0b1 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/TableSelectorController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/gen/TableSelectorController.java
@@ -42,7 +42,7 @@ import java.util.Map;
 
 /**
  */
-@SuppressWarnings("unused") // methods are used in bindings by name
+@SuppressWarnings("unused") // setTable(), included, problem are referenced by 
name in TableBindingBuilder column expressions
 public class TableSelectorController extends CayenneController {
 
     protected TableSelectorView view;
@@ -136,7 +136,7 @@ public class TableSelectorController extends 
CayenneController {
                 getApplication().getBindingFactory(),
                 this);
 
-        builder.bindToAction(view.getCheckAll(), "checkAllAction()");
+        view.getCheckAll().addActionListener(e -> checkAllAction());
 
         TableBindingBuilder tableBuilder = new TableBindingBuilder(builder);
 
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerOptions.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerOptions.java
index 8c0d521eb..8a169a806 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerOptions.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerOptions.java
@@ -129,9 +129,9 @@ public class MergerOptions extends CayenneController {
 
         sqlBinding = builder.bindToTextArea(view.getSql(), "textForSQL");
 
-        builder.bindToAction(view.getGenerateButton(), 
"generateSchemaAction()");
-        builder.bindToAction(view.getSaveSqlButton(), "storeSQLAction()");
-        builder.bindToAction(view.getCancelButton(), "closeAction()");
+        view.getGenerateButton().addActionListener(e -> 
generateSchemaAction());
+        view.getSaveSqlButton().addActionListener(e -> storeSQLAction());
+        view.getCancelButton().addActionListener(e -> closeAction());
 
         // refresh SQL if different tables were selected
         view.getTabs().addChangeListener(new ChangeListener() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerTokenSelectorController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerTokenSelectorController.java
index 55efde7db..792493b59 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerTokenSelectorController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/merge/MergerTokenSelectorController.java
@@ -25,7 +25,6 @@ import 
org.apache.cayenne.dbsync.merge.factory.MergerTokenFactory;
 import org.apache.cayenne.modeler.Application;
 import org.apache.cayenne.modeler.util.CayenneController;
 import org.apache.cayenne.modeler.util.ModelerUtil;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.apache.cayenne.swing.ObjectBinding;
 
 import javax.swing.DefaultCellEditor;
@@ -151,12 +150,8 @@ public class MergerTokenSelectorController extends 
CayenneController {
     // ------ other stuff ------
 
     protected void initController() {
-        final BindingBuilder builder = new BindingBuilder(
-                getApplication().getBindingFactory(),
-                this);
-
-        builder.bindToAction(view.getCheckAll(), "checkAllAction()");
-        builder.bindToAction(view.getReverseAll(), "reverseAllAction()");
+        view.getCheckAll().addActionListener(e -> checkAllAction());
+        view.getReverseAll().addActionListener(e -> reverseAllAction());
 
         final TableModel model = new MergerTokenTableModel(this);
 
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/objentity/ObjAttributeInfoDialog.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/objentity/ObjAttributeInfoDialog.java
index 340ed488e..6830c2ea6 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/objentity/ObjAttributeInfoDialog.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/objentity/ObjAttributeInfoDialog.java
@@ -39,7 +39,6 @@ import 
org.apache.cayenne.modeler.util.EntityTreeAttributeRelationshipFilter;
 import org.apache.cayenne.modeler.util.EntityTreeModel;
 import org.apache.cayenne.modeler.util.ModelerUtil;
 import org.apache.cayenne.project.extension.info.ObjectInfo;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.apache.cayenne.util.CayenneMapEntry;
 
 import javax.swing.DefaultComboBoxModel;
@@ -179,10 +178,9 @@ public class ObjAttributeInfoDialog extends 
CayenneController implements TreeSel
                                                attr,
                                                ObjectInfo.COMMENT));
 
-               BindingBuilder builder = new 
BindingBuilder(getApplication().getBindingFactory(), this);
-               builder.bindToAction(view.getCancelButton(), "closeAction()");
-               builder.bindToAction(view.getSelectPathButton(), 
"setPath(true)");
-               builder.bindToAction(view.getSaveButton(), "saveMapping()");
+               view.getCancelButton().addActionListener(e -> closeAction());
+               view.getSelectPathButton().addActionListener(e -> 
setPath(true));
+               view.getSaveButton().addActionListener(e -> saveMapping());
 
                /*
                 * set filter for ObjAttributePathBrowser
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceCreator.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceCreator.java
index 3e39bcd77..9b4cf3dfb 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceCreator.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceCreator.java
@@ -31,7 +31,6 @@ import org.apache.cayenne.modeler.pref.DBConnectionInfo;
 import org.apache.cayenne.modeler.util.AdapterMapping;
 import org.apache.cayenne.modeler.util.CayenneController;
 import org.apache.cayenne.modeler.util.DbAdapterInfo;
-import org.apache.cayenne.swing.BindingBuilder;
 
 /**
  */
@@ -72,11 +71,8 @@ public class DataSourceCreator extends CayenneController {
     }
 
     protected void initBindings() {
-        BindingBuilder builder = new BindingBuilder(
-                getApplication().getBindingFactory(),
-                this);
-        builder.bindToAction(view.getCancelButton(), "cancelAction()");
-        builder.bindToAction(view.getOkButton(), "okAction()");
+        view.getCancelButton().addActionListener(e -> cancelAction());
+        view.getOkButton().addActionListener(e -> okAction());
     }
 
     public void okAction() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceDuplicator.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceDuplicator.java
index 7e73919a6..0bcbf2c54 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceDuplicator.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourceDuplicator.java
@@ -26,7 +26,6 @@ import javax.swing.JOptionPane;
 
 import org.apache.cayenne.modeler.pref.DBConnectionInfo;
 import org.apache.cayenne.modeler.util.CayenneController;
-import org.apache.cayenne.swing.BindingBuilder;
 
 /**
  */
@@ -62,11 +61,8 @@ public class DataSourceDuplicator extends CayenneController {
     }
 
     protected void initBindings() {
-        BindingBuilder builder = new BindingBuilder(
-                getApplication().getBindingFactory(),
-                this);
-        builder.bindToAction(view.getCancelButton(), "cancelAction()");
-        builder.bindToAction(view.getOkButton(), "okAction()");
+        view.getCancelButton().addActionListener(e -> cancelAction());
+        view.getOkButton().addActionListener(e -> okAction());
     }
 
     public void okAction() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourcePreferences.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourcePreferences.java
index fe0ba7b8a..20f123303 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourcePreferences.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/pref/DataSourcePreferences.java
@@ -95,10 +95,10 @@ public class DataSourcePreferences extends 
CayenneController {
 
        protected void initBindings() {
                BindingBuilder builder = new 
BindingBuilder(getApplication().getBindingFactory(), this);
-               builder.bindToAction(view.getAddDataSource(), 
"newDataSourceAction()");
-               builder.bindToAction(view.getDuplicateDataSource(), 
"duplicateDataSourceAction()");
-               builder.bindToAction(view.getRemoveDataSource(), 
"removeDataSourceAction()");
-               builder.bindToAction(view.getTestDataSource(), 
"testDataSourceAction()");
+               view.getAddDataSource().addActionListener(e -> 
newDataSourceAction());
+               view.getDuplicateDataSource().addActionListener(e -> 
duplicateDataSourceAction());
+               view.getRemoveDataSource().addActionListener(e -> 
removeDataSourceAction());
+               view.getTestDataSource().addActionListener(e -> 
testDataSourceAction());
 
                builder.bindToComboSelection(view.getDataSources(), 
"dataSourceKey");
        }
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenArtefactSelectorController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenArtefactSelectorController.java
index 4c96b2a13..f683c911b 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenArtefactSelectorController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenArtefactSelectorController.java
@@ -74,7 +74,7 @@ public class CgenArtefactSelectorController extends 
CayenneController {
     }
 
     protected void initBindings() {
-        builder.bindToAction(checkBoxHeader, "checkAllAction()");
+        checkBoxHeader.addActionListener(e -> checkAllAction());
         TableBindingBuilder tableBuilder = new TableBindingBuilder(builder);
 
         tableBuilder.addColumn(
@@ -134,7 +134,6 @@ public class CgenArtefactSelectorController extends 
CayenneController {
      * An action that updates entity check boxes in response to the Select All 
state
      * change.
      */
-    @SuppressWarnings("unused")
     public void checkAllAction() {
         if (getParentController().updateSelection(checkBoxHeader.isSelected() 
? o -> true : o -> false)) {
             tableBinding.updateView();
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenConfigController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenConfigController.java
index a7a8e9377..85ab6dd68 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenConfigController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenConfigController.java
@@ -27,7 +27,6 @@ import org.apache.cayenne.modeler.pref.DataMapDefaults;
 import org.apache.cayenne.modeler.pref.FSPath;
 import org.apache.cayenne.modeler.util.CayenneController;
 import org.apache.cayenne.modeler.util.TextAdapter;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.apache.cayenne.util.Util;
 
 import javax.swing.JButton;
@@ -53,7 +52,7 @@ public class CgenConfigController extends CayenneController {
         this.view = new CgenConfigPanel(getParentController());
         isEditorOpen = false;
         initListeners();
-        initBindings(new BindingBuilder(getApplication().getBindingFactory(), 
this));
+        initBindings();
     }
 
 
@@ -110,9 +109,8 @@ public class CgenConfigController extends CayenneController 
{
                 new TemplateEditorController(this, 
TemplateType.DATAMAP_SUPERCLASS).startupAction());
     }
 
-    private void initBindings(BindingBuilder bindingBuilder) {
-        JButton outputSelect = getView().getSelectOutputFolder();
-        bindingBuilder.bindToAction(outputSelect, 
"selectOutputFolderAction()");
+    private void initBindings() {
+        getView().getSelectOutputFolder().addActionListener(e -> 
selectOutputFolderAction());
     }
 
     protected CgenController getParentController() {
@@ -234,7 +232,6 @@ public class CgenConfigController extends CayenneController 
{
      * An action method that pops up a file chooser dialog to pick the
      * generation directory.
      */
-    @SuppressWarnings("unused")
     public void selectOutputFolderAction() {
 
         TextAdapter outputFolder = getView().getOutputFolder();
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenController.java
index 2af57f06b..b8a3216ea 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/CgenController.java
@@ -46,7 +46,6 @@ import org.apache.cayenne.modeler.editor.DbImportController;
 import org.apache.cayenne.modeler.event.ProjectSavedEvent;
 import org.apache.cayenne.modeler.util.CayenneController;
 import org.apache.cayenne.modeler.util.ModelerUtil;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.apache.cayenne.tools.ToolsInjectorBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -148,11 +147,10 @@ public class CgenController extends CayenneController 
implements ObjEntityListen
     }
 
     protected void initBindings() {
-        BindingBuilder builder = new 
BindingBuilder(getApplication().getBindingFactory(), this);
-        builder.bindToAction(view.getGenerateButton(), "generateAction()");
-        builder.bindToAction(view.getAddConfigBtn(), "addConfigAction()");
-        builder.bindToAction(view.getEditConfigBtn(), "editConfigAction()");
-        builder.bindToAction(view.getRemoveConfigBtn(), 
"removeConfigAction()");
+        view.getGenerateButton().addActionListener(e -> generateAction());
+        view.getAddConfigBtn().addActionListener(e -> addConfigAction());
+        view.getEditConfigBtn().addActionListener(e -> editConfigAction());
+        view.getRemoveConfigBtn().addActionListener(e -> removeConfigAction());
         generatorSelectedAction();
     }
 
@@ -162,7 +160,6 @@ public class CgenController extends CayenneController 
implements ObjEntityListen
         classesSelector.classSelectedAction();
     }
 
-    @SuppressWarnings("unused")
     public void generateAction() {
         ClassGenerationAction generator = new ToolsInjectorBuilder()
                 .addModule(binder
@@ -191,7 +188,6 @@ public class CgenController extends CayenneController 
implements ObjEntityListen
         }
     }
 
-    @SuppressWarnings("unused")
     public void addConfigAction() {
         String name = JOptionPane.showInputDialog(
                 view,
@@ -213,7 +209,6 @@ public class CgenController extends CayenneController 
implements ObjEntityListen
         }
     }
 
-    @SuppressWarnings("unused")
     public void editConfigAction() {
         String name = JOptionPane.showInputDialog(
                 view,
@@ -234,7 +229,6 @@ public class CgenController extends CayenneController 
implements ObjEntityListen
         }
     }
 
-    @SuppressWarnings("unused")
     public void removeConfigAction() {
         int result = JOptionPane.showConfirmDialog(
                 view,
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/templateeditor/TemplateEditorController.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/templateeditor/TemplateEditorController.java
index a725f904a..c0c370513 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/templateeditor/TemplateEditorController.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/cgen/templateeditor/TemplateEditorController.java
@@ -25,7 +25,6 @@ import org.apache.cayenne.gen.TemplateType;
 import org.apache.cayenne.map.DataMap;
 import org.apache.cayenne.modeler.editor.cgen.CgenConfigController;
 import org.apache.cayenne.modeler.util.CayenneController;
-import org.apache.cayenne.swing.BindingBuilder;
 import org.apache.velocity.exception.ParseErrorException;
 
 import javax.swing.JOptionPane;
@@ -111,12 +110,11 @@ public class TemplateEditorController extends 
CayenneController {
     }
 
     protected void initBindings() {
-        BindingBuilder builder = new 
BindingBuilder(getApplication().getBindingFactory(), this);
-        builder.bindToAction(editorView.getSaveButton(), "saveAction()");
-        builder.bindToAction(editorView.getPreviewButton(), 
"generatePreviewAction()");
-        builder.bindToAction(editorView.getFindButton(), "findAction()");
-        builder.bindToAction(editorView.getFindAndReplaceButton(), 
"findAndReplaceAction()");
-        builder.bindToAction(editorView.getResetToDefaultButton(), 
"resetToDefaultAction()");
+        editorView.getSaveButton().addActionListener(e -> saveAction());
+        editorView.getPreviewButton().addActionListener(e -> 
generatePreviewAction());
+        editorView.getFindButton().addActionListener(e -> findAction());
+        editorView.getFindAndReplaceButton().addActionListener(e -> 
findAndReplaceAction());
+        editorView.getResetToDefaultButton().addActionListener(e -> 
resetToDefaultAction());
     }
 
     protected void addListeners() {
@@ -158,7 +156,6 @@ public class TemplateEditorController extends 
CayenneController {
 
     }
 
-    @SuppressWarnings("unused")
     public void saveAction() {
         templateSaver.save(templateType, isTemplateDefault, 
editorView.getTemplateText());
         parentController.getCodeGeneratorController().checkCgenConfigDirty();
@@ -167,21 +164,24 @@ public class TemplateEditorController extends 
CayenneController {
         editorView.getSaveButton().setEnabled(false);
     }
 
-    @SuppressWarnings("unused")
-    public void generatePreviewAction() throws Exception {
-        ClassGenerationAction action = 
actionConfigurator.preparePreviewAction(editorView.getTemplateText());
-        Writer writer = actionConfigurator.getWriter();
-
-        int caretPosition = 
editorView.getEditingTemplatePane().getCaretPosition();
+    public void generatePreviewAction() {
         try {
-            action.execute();
-        } catch (ParseErrorException pe) {
-            caretPosition = getErrorCaretPosition(pe);
-            writer.write(pe.getMessage());
+            ClassGenerationAction action = 
actionConfigurator.preparePreviewAction(editorView.getTemplateText());
+            Writer writer = actionConfigurator.getWriter();
+
+            int caretPosition = 
editorView.getEditingTemplatePane().getCaretPosition();
+            try {
+                action.execute();
+            } catch (ParseErrorException pe) {
+                caretPosition = getErrorCaretPosition(pe);
+                writer.write(pe.getMessage());
+            } catch (Exception e) {
+                writer.write(e.getMessage());
+            }
+            displayPreview(writer, caretPosition);
         } catch (Exception e) {
-            writer.write(e.getMessage());
+            JOptionPane.showMessageDialog(editorView, e.getMessage(), "Preview 
Error", JOptionPane.ERROR_MESSAGE);
         }
-        displayPreview(writer, caretPosition);
     }
 
     private void displayPreview(Writer writer, int caretPosition) {
@@ -196,17 +196,14 @@ public class TemplateEditorController extends 
CayenneController {
         return 
editorView.getEditingTemplatePane().getLineStartOffset(errorLineNumber - 1);
     }
 
-    @SuppressWarnings("unused")
     public void findAction() {
         new FindController(this).startupAction();
     }
 
-    @SuppressWarnings("unused")
     public void findAndReplaceAction() {
         new FindAndReplaceController(this).startupAction();
     }
 
-    @SuppressWarnings("unused")
     public void resetToDefaultAction() {
         int result = showResetToDefaultDialog();
         if (result == JOptionPane.OK_OPTION) {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
index 473602276..2b66732a7 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
@@ -71,7 +71,7 @@ public class JDBCDataSourceEditor extends DataSourceEditor {
           builder.bindToTextField(view.getMinConnections(), 
"node.dataSourceDescriptor.minConnections");
         
 
-        builder.bindToAction(view.getSyncWithLocal(), 
"syncDataSourceAction()");
+        view.getSyncWithLocal().addActionListener(e -> syncDataSourceAction());
     }
 
 
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/MainDataNodeEditor.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/MainDataNodeEditor.java
index f037d3216..1f2b28f63 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/MainDataNodeEditor.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/MainDataNodeEditor.java
@@ -203,7 +203,7 @@ public class MainDataNodeEditor extends CayenneController {
                bindings[3] = builder.bindToTextField(view.getCustomAdapter(), 
"adapterName");
 
                // one way bindings
-               builder.bindToAction(view.getConfigLocalDataSources(), 
"dataSourceConfigAction()");
+               view.getConfigLocalDataSources().addActionListener(e -> 
dataSourceConfigAction());
        }
 
        public void dataSourceConfigAction() {

Reply via email to