Author: oltka
Date: Thu Jan 26 10:11:20 2012
New Revision: 1236126
URL: http://svn.apache.org/viewvc?rev=1236126&view=rev
Log:
CAY-1654 Can't switch DataSource Factory on certain projects
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/configuration/server/XMLPoolingDataSourceFactory.java
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/DataSourceEditor.java
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/configuration/server/XMLPoolingDataSourceFactory.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/configuration/server/XMLPoolingDataSourceFactory.java?rev=1236126&r1=1236125&r2=1236126&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/configuration/server/XMLPoolingDataSourceFactory.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/configuration/server/XMLPoolingDataSourceFactory.java
Thu Jan 26 10:11:20 2012
@@ -60,20 +60,15 @@ public class XMLPoolingDataSourceFactory
logger.info(message);
throw new ConfigurationException(message);
}
-
- String driver = (dataSourceDescriptor.getJdbcDriver() == null)? "":
dataSourceDescriptor.getJdbcDriver();
- String dataSourceUrl = (dataSourceDescriptor.getDataSourceUrl() ==
null)? "": dataSourceDescriptor.getDataSourceUrl();
- String userName = (dataSourceDescriptor.getUserName() == null)? "":
dataSourceDescriptor.getUserName();
- String password = (dataSourceDescriptor.getPassword() == null)? "":
dataSourceDescriptor.getPassword();
try {
return new PoolManager(
- driver,
- dataSourceUrl,
+ dataSourceDescriptor.getJdbcDriver(),
+ dataSourceDescriptor.getDataSourceUrl(),
dataSourceDescriptor.getMinConnections(),
dataSourceDescriptor.getMaxConnections(),
- userName,
- password,
+ dataSourceDescriptor.getUserName(),
+ dataSourceDescriptor.getPassword(),
jdbcEventLogger);
}
catch (Exception e) {
Modified:
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/DataSourceEditor.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/DataSourceEditor.java?rev=1236126&r1=1236125&r2=1236126&view=diff
==============================================================================
---
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/DataSourceEditor.java
(original)
+++
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/DataSourceEditor.java
Thu Jan 26 10:11:20 2012
@@ -32,7 +32,7 @@ import org.apache.cayenne.util.Util;
public abstract class DataSourceEditor extends CayenneController {
protected ObjectBinding[] fieldAdapters;
- protected DataNodeDescriptor node;
+ private DataNodeDescriptor node;
protected BindingDelegate nodeChangeProcessor;
public DataSourceEditor(ProjectController controller,
Modified:
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java?rev=1236126&r1=1236125&r2=1236126&view=diff
==============================================================================
---
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
(original)
+++
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/datanode/JDBCDataSourceEditor.java
Thu Jan 26 10:11:20 2012
@@ -21,6 +21,7 @@ package org.apache.cayenne.modeler.edito
import java.awt.Component;
+import org.apache.cayenne.configuration.DataNodeDescriptor;
import org.apache.cayenne.conn.DataSourceInfo;
import org.apache.cayenne.modeler.CayenneModelerController;
import org.apache.cayenne.modeler.ProjectController;
@@ -28,6 +29,7 @@ import org.apache.cayenne.modeler.pref.D
import org.apache.cayenne.swing.BindingBuilder;
import org.apache.cayenne.swing.BindingDelegate;
import org.apache.cayenne.swing.ObjectBinding;
+import org.apache.cayenne.util.Util;
public class JDBCDataSourceEditor extends DataSourceEditor {
@@ -42,10 +44,19 @@ public class JDBCDataSourceEditor extend
public Component getView() {
return view;
}
+
+ @Override
+ public void setNode(DataNodeDescriptor node) {
+ if (!Util.nullSafeEquals(getNode(), node)) {
+ if (node.getDataSourceDescriptor() == null) {
+ node.setDataSourceDescriptor(new DataSourceInfo());
+ }
+ super.setNode(node);
+ }
+ }
protected void prepareBindings(BindingBuilder builder) {
this.view = new JDBCDataSourceView();
-
fieldAdapters = new ObjectBinding[6];
fieldAdapters[0] =
@@ -62,7 +73,7 @@ public class JDBCDataSourceEditor extend
builder.bindToTextField(view.getMinConnections(),
"node.dataSourceDescriptor.minConnections");
- builder.bindToAction(view.getSyncWithLocal(),
"syncDataSourceAction()");
+ builder.bindToAction(view.getSyncWithLocal(),
"syncDataSourceAction()");
}