Fix wrong selection of data source in reengineer dialog after editing it

Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/78a9c9b6
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/78a9c9b6
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/78a9c9b6

Branch: refs/heads/master
Commit: 78a9c9b6f6b810c8c5b00fa7659d5a56fc5a67b7
Parents: 4d7433b
Author: stariy <stari...@gmail.com>
Authored: Tue Nov 1 00:12:39 2016 +0300
Committer: Savva Kolbachev <s.kolbac...@gmail.com>
Committed: Thu Nov 3 22:54:28 2016 +0300

----------------------------------------------------------------------
 .../cayenne/modeler/dialog/db/DataSourceWizard.java       | 10 ++++++----
 .../cayenne/modeler/dialog/db/DataSourceWizardView.java   |  6 +++---
 2 files changed, 9 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/78a9c9b6/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizard.java
----------------------------------------------------------------------
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 33d595b..32cb698 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
@@ -46,7 +46,7 @@ public class DataSourceWizard extends CayenneController {
        protected DBConnectionInfo altDataSource;
        protected String altDataSourceKey;
        protected ObjectBinding dataSourceBinding;
-       protected Map dataSources;
+       protected Map<String, DBConnectionInfo> dataSources;
 
        protected String dataSourceKey;
 
@@ -202,9 +202,9 @@ public class DataSourceWizard extends CayenneController {
                        dataSources.put(altDataSourceKey, altDataSource);
                }
 
-               Object[] keys = dataSources.keySet().toArray();
+               String[] keys = dataSources.keySet().toArray(new String[0]);
                Arrays.sort(keys);
-               view.getDataSources().setModel(new DefaultComboBoxModel(keys));
+               view.getDataSources().setModel(new 
DefaultComboBoxModel<>(keys));
 
                if (getDataSourceKey() == null) {
                        String key = null;
@@ -212,11 +212,13 @@ public class DataSourceWizard extends CayenneController {
                        if (altDataSourceKey != null) {
                                key = altDataSourceKey;
                        } else if (keys.length > 0) {
-                               key = keys[0].toString();
+                               key = keys[0];
                        }
 
                        setDataSourceKey(key);
                        dataSourceBinding.updateView();
                }
+
+               view.getDataSources().setSelectedItem(getDataSourceKey());
        }
 }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/78a9c9b6/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizardView.java
----------------------------------------------------------------------
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizardView.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizardView.java
index d40c8d9..7f2222d 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizardView.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/db/DataSourceWizardView.java
@@ -33,7 +33,7 @@ import java.awt.*;
  */
 public class DataSourceWizardView extends JDialog {
 
-    protected JComboBox dataSources;
+    protected JComboBox<String> dataSources;
     protected JButton configButton;
     protected JButton okButton;
     protected JButton cancelButton;
@@ -42,7 +42,7 @@ public class DataSourceWizardView extends JDialog {
     public DataSourceWizardView(CayenneController controller) {
         super(Application.getFrame());
         
-        this.dataSources = new JComboBox();
+        this.dataSources = new JComboBox<>();
 
         this.configButton = new JButton("...");
         this.configButton.setToolTipText("configure local DataSource");
@@ -72,7 +72,7 @@ public class DataSourceWizardView extends JDialog {
         setTitle("DB Connection Info");
     }
 
-    public JComboBox getDataSources() {
+    public JComboBox<String> getDataSources() {
         return dataSources;
     }
 

Reply via email to