I'm resending this, as I forgot to put [PATCH] in the subject, I didn't
want to to be overlooked:

This patch allows the user to disable primary/foreign key setter
overloading in the Object/ObjectWithManager classes using the
"overloadKeySetters" property in Torque's build.properties file. 

When set to true (the default), Torque behaves as it did previously.
When set to false the setter methods accepting a String parameter will
not be generated. 

I ran the test suite, and as far as I could tell everything worked
properly. 

-james 

-- 
[]  James A. Hillyerd <[EMAIL PROTECTED]> - Java Software Engineer
[]  PGP 1024D/D31BC40D F87B 7906 C0DA 32E8 B8F6 DE23 FBF6 4712 D31B C40D
Index: conf/build.properties
===================================================================
RCS file: /home/cvspublic/jakarta-turbine-torque/src/conf/build.properties,v
retrieving revision 1.12
diff -u -r1.12 build.properties
--- conf/build.properties	10 Apr 2002 21:21:25 -0000	1.12
+++ conf/build.properties	1 May 2002 07:24:02 -0000
@@ -67,6 +67,10 @@
 #
 # useManagers=Generate Manager classes that use JCS for caching.  Still
 # considered experimental.
+#
+# overloadKeySetters=false prevents overloading of the setter method for
+# primary/foreign keys.  This is useful when working with broken
+# JavaBean implementations.
 # -------------------------------------------------------------------
 
 targetPackage=org.apache.torque
@@ -77,6 +81,7 @@
 addTimeStamp=true
 addIntakeRetrievable=false
 useManagers=false
+overloadKeySetters=true
 
 # -------------------------------------------------------------------
 #
Index: templates/om/Object.vm
===================================================================
RCS file: /home/cvspublic/jakarta-turbine-torque/src/templates/om/Object.vm,v
retrieving revision 1.28
diff -u -r1.28 Object.vm
--- templates/om/Object.vm	30 Apr 2002 23:49:48 -0000	1.28
+++ templates/om/Object.vm	1 May 2002 07:24:05 -0000
@@ -194,14 +194,16 @@
      }
 
 ##if ($complexObjectModel)
-  #if ($col.isPrimaryKey() || $col.isForeignKey())
-   /**
-    * Set the value of $cfc as a string.
-    */
-    public void set${cfc}(String v ) $throwsClause
-    {
-         set${cfc}(new ${cjtype}(v));
-    }
+  #if ($overloadKeySetters)
+    #if ($col.isPrimaryKey() || $col.isForeignKey())
+     /**
+      * Set the value of $cfc as a string.
+      */
+      public void set${cfc}(String v ) $throwsClause
+      {
+           set${cfc}(new ${cjtype}(v));
+      }
+    #end
   #end
 ##end
 
Index: templates/om/ObjectWithManager.vm
===================================================================
RCS file: /home/cvspublic/jakarta-turbine-torque/src/templates/om/ObjectWithManager.vm,v
retrieving revision 1.7
diff -u -r1.7 ObjectWithManager.vm
--- templates/om/ObjectWithManager.vm	30 Apr 2002 23:49:48 -0000	1.7
+++ templates/om/ObjectWithManager.vm	1 May 2002 07:24:07 -0000
@@ -198,14 +198,16 @@
      }
 
 ##if ($complexObjectModel)
-  #if ($col.isPrimaryKey() || $col.isForeignKey())
-   /**
-    * Set the value of $cfc as a string.
-    */
-    public void set${cfc}(String v ) $throwsClause
-    {
-         set${cfc}(new ${cjtype}(v));
-    }
+  #if ($overloadKeySetters)
+    #if ($col.isPrimaryKey() || $col.isForeignKey())
+     /**
+      * Set the value of $cfc as a string.
+      */
+      public void set${cfc}(String v ) $throwsClause
+      {
+           set${cfc}(new ${cjtype}(v));
+      }
+    #end
   #end
 ##end
 

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to