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"/>


Reply via email to