You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2006/07/18 04:27:26 UTC
svn commit: r422944 - in
/incubator/cayenne/main/trunk/cayenne/cayenne-java/src:
cayenne/java/org/apache/cayenne/map/MapLoader.java
tests/java/org/apache/cayenne/project/ApplicationProjectUpgradeTst.java
Author: aadamchik
Date: Mon Jul 17 19:27:26 2006
New Revision: 422944
URL: http://svn.apache.org/viewvc?rev=422944&view=rev
Log:
fixing adapter key conversion
Modified:
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/map/MapLoader.java
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/project/ApplicationProjectUpgradeTst.java
Modified: incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/map/MapLoader.java
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/map/MapLoader.java?rev=422944&r1=422943&r2=422944&view=diff
==============================================================================
--- incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/map/MapLoader.java (original)
+++ incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/map/MapLoader.java Mon Jul 17 19:27:26 2006
@@ -482,7 +482,7 @@
}
private void processStartQuerySQL(Attributes atts) {
- this.sqlKey = atts.getValue("", "adapter-class");
+ this.sqlKey = convertClassNameFromV1_2(atts.getValue("", "adapter-class"));
}
private void processStartObjEntity(Attributes atts) {
@@ -704,9 +704,8 @@
builder = SelectQueryBuilder.class.getName();
}
// upgrade from v. <= 1.2
- else if (builder.startsWith(_1_2_PACKAGE_PREFIX)) {
- builder = _2_0_PACKAGE_PREFIX
- + builder.substring(_1_2_PACKAGE_PREFIX.length());
+ else {
+ builder = convertClassNameFromV1_2(builder);
}
}
@@ -906,5 +905,21 @@
private void resetCurrentTag() {
currentTag = null;
+ }
+
+ /**
+ * @since 2.0
+ */
+ String convertClassNameFromV1_2(String name) {
+ if (name == null) {
+ return null;
+ }
+
+ // upgrade from v. <= 1.2
+ if (name.startsWith(_1_2_PACKAGE_PREFIX)) {
+ return _2_0_PACKAGE_PREFIX + name.substring(_1_2_PACKAGE_PREFIX.length());
+ }
+
+ return name;
}
}
Modified: incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/project/ApplicationProjectUpgradeTst.java
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/project/ApplicationProjectUpgradeTst.java?rev=422944&r1=422943&r2=422944&view=diff
==============================================================================
--- incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/project/ApplicationProjectUpgradeTst.java (original)
+++ incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/project/ApplicationProjectUpgradeTst.java Mon Jul 17 19:27:26 2006
@@ -69,7 +69,10 @@
import org.apache.cayenne.conf.DriverDataSourceFactory;
import org.apache.cayenne.conf.RuntimeLoadDelegate;
import org.apache.cayenne.conf.RuntimeSaveDelegate;
+import org.apache.cayenne.dba.db2.DB2Adapter;
import org.apache.cayenne.dba.mysql.MySQLAdapter;
+import org.apache.cayenne.map.DataMap;
+import org.apache.cayenne.query.SQLTemplate;
import org.apache.cayenne.unit.CayenneTestCase;
import org.apache.cayenne.unit.CayenneTestResources;
import org.apache.cayenne.util.Util;
@@ -112,8 +115,15 @@
assertNotNull(dn.getAdapter());
assertEquals(MySQLAdapter.class.getName(), dn.getAdapter().getClass().getName());
assertEquals(DriverDataSourceFactory.class.getName(), dn.getDataSourceFactory());
+
+ DataMap testmap = dd.getMap("testmap");
+ assertNotNull(testmap);
+ SQLTemplate query = (SQLTemplate) testmap.getQuery("NonSelectingQuery");
+ assertNotNull(query);
+ assertNotNull(query.getCustomTemplate(DB2Adapter.class.getName()));
+ assertNull(query.getCustomTemplate("invalid"));
}
-
+
public void testUpgradeFrom1_2() throws Exception {
// copy files first as upgrade is done in-place
@@ -150,6 +160,13 @@
assertNotNull(dn.getAdapter());
assertEquals(MySQLAdapter.class.getName(), dn.getAdapter().getClass().getName());
assertEquals(DriverDataSourceFactory.class.getName(), dn.getDataSourceFactory());
+
+ DataMap testmap = dd.getMap("testmap");
+ assertNotNull(testmap);
+ SQLTemplate query = (SQLTemplate) testmap.getQuery("NonSelectingQuery");
+ assertNotNull(query);
+ assertNotNull(query.getCustomTemplate(DB2Adapter.class.getName()));
+ assertNull(query.getCustomTemplate("invalid"));
}
// coped from the Modeler ProjectAction.