Author: aadamchik
Date: Sun Oct 19 05:01:38 2008
New Revision: 705993
URL: http://svn.apache.org/viewvc?rev=705993&view=rev
Log:
CAY-1070 Generating Query and Procedure Access Code
fixing null packages
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/gen/DataMapArtifact.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/resources/dotemplates/v1_2/datamap-superclass.vm
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/generic.map.xml
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/gen/DataMapArtifact.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/gen/DataMapArtifact.java?rev=705993&r1=705992&r2=705993&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/gen/DataMapArtifact.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/gen/DataMapArtifact.java
Sun Oct 19 05:01:38 2008
@@ -19,20 +19,20 @@
package org.apache.cayenne.gen;
-import org.apache.velocity.VelocityContext;
+import java.util.Collection;
+import java.util.LinkedList;
+
import org.apache.cayenne.map.DataMap;
+import org.apache.cayenne.query.ProcedureQuery;
import org.apache.cayenne.query.Query;
-import org.apache.cayenne.query.SelectQuery;
import org.apache.cayenne.query.SQLTemplate;
-import org.apache.cayenne.query.ProcedureQuery;
+import org.apache.cayenne.query.SelectQuery;
import org.apache.cayenne.util.NameConverter;
-
-import java.util.Collection;
-import java.util.LinkedList;
+import org.apache.velocity.VelocityContext;
/**
* [EMAIL PROTECTED] Artifact} facade for a DataMap.
- *
+ *
* @author Dzmitry Rusak
* @since 3.0
*/
@@ -58,9 +58,17 @@
}
public String getQualifiedClassName() {
- return dataMap.getDefaultPackage() + '.' +
- NameConverter.underscoredToJava(
- NameConverter.specialCharsToJava(dataMap.getName()), true);
+ String pkg = dataMap.getDefaultPackage();
+ if (pkg == null) {
+ pkg = "";
+ }
+ else {
+ pkg = pkg + '.';
+ }
+
+ return pkg
+ + NameConverter.underscoredToJava(NameConverter
+ .specialCharsToJava(dataMap.getName()), true);
}
public Object getObject() {
@@ -75,11 +83,11 @@
public TemplateType[] getTemplateTypes(ArtifactGenerationMode mode) {
switch (mode) {
case SINGLE_CLASS:
- return new TemplateType[]{
- TemplateType.DATAMAP_SINGLE_CLASS
+ return new TemplateType[] {
+ TemplateType.DATAMAP_SINGLE_CLASS
};
case GENERATION_GAP:
- return new TemplateType[]{
+ return new TemplateType[] {
TemplateType.DATAMAP_SUPERCLASS,
TemplateType.DATAMAP_SUBCLASS
};
default:
@@ -105,4 +113,7 @@
return selectQueries;
}
+ public boolean hasQueries() {
+ return selectQueries.size() > 0;
+ }
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/resources/dotemplates/v1_2/datamap-superclass.vm
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/resources/dotemplates/v1_2/datamap-superclass.vm?rev=705993&r1=705992&r2=705993&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/resources/dotemplates/v1_2/datamap-superclass.vm
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/resources/dotemplates/v1_2/datamap-superclass.vm
Sun Oct 19 05:01:38 2008
@@ -34,6 +34,7 @@
${importUtils.setPackage($superPackageName)}##
${importUtils.addReservedType("${superPackageName}.${superClassName}")}##
${importUtils.addType("${basePackageName}.${baseClassName}")}##
+#if( ${object.hasQueries()} )
${importUtils.addType('java.util.List')}##
${importUtils.addType('org.apache.cayenne.ObjectContext')}##
${importUtils.addType('org.apache.cayenne.query.NamedQuery')}##
@@ -43,6 +44,7 @@
${importUtils.addType(${dataMapUtils.getParameterType(${selectQuery},
${parameter})})}##
#end
#end
+#end
${importUtils.generate()}
/**
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/generic.map.xml
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/generic.map.xml?rev=705993&r1=705992&r2=705993&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/generic.map.xml
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/generic.map.xml
Sun Oct 19 05:01:38 2008
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<data-map project-version="3.0">
+ <property name="defaultPackage"
value="org.apache.cayenne.testdo.generic"/>
<db-entity name="GENERIC1">
<db-attribute name="ID" type="INTEGER" isPrimaryKey="true"
isMandatory="true"/>
<db-attribute name="NAME" type="VARCHAR" length="200"/>