You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ro...@apache.org on 2006/08/15 14:32:50 UTC

svn commit: r431587 - in /incubator/tuscany/java/sdo: plugin/src/main/java/org/apache/tuscany/sdo/plugin/ tools/src/main/java/org/apache/tuscany/sdo/generate/

Author: robbinspg
Date: Tue Aug 15 05:32:49 2006
New Revision: 431587

URL: http://svn.apache.org/viewvc?rev=431587&view=rev
Log:
TUSCANY-254 Patch applied at request of Kelvin

Modified:
    incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/GeneratorMojo.java
    incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/SchemaFileOption.java
    incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/JavaGenerator.java
    incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java

Modified: incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/GeneratorMojo.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/GeneratorMojo.java?rev=431587&r1=431586&r2=431587&view=diff
==============================================================================
--- incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/GeneratorMojo.java (original)
+++ incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/GeneratorMojo.java Tue Aug 15 05:32:49 2006
@@ -123,6 +123,13 @@
      * @parameter
      */
     private Boolean noEMF;
+    
+    /**
+     * With this option, generated interfaces will extend commonj.sdo.DataObject.
+     * 
+     * @parameter
+     */
+    private Boolean interfaceDataObject;
 
     /**
      * Support for generating multiple schema files.
@@ -168,6 +175,9 @@
                 if (null == sf.isNoEMF()) {
                     sf.setNoEMF(noEMF);
                 }
+                if (null == sf.isInterfaceDataObject()) {
+                    sf.setInterfaceDataObject(interfaceDataObject);
+                }
                 if (sf.getFileName() == null || sf.getFileName().length() == 0) {
                     throw new MojoExecutionException("no fileName specfied for schema.");
                 }
@@ -190,6 +200,7 @@
                     schemaFiles[i].setGenerateSwitch(generateSwitch);
                     schemaFiles[i].setNoContainment(noContainment);
                     schemaFiles[i].setNoEMF(noEMF);
+                    schemaFiles[i].setInterfaceDataObject(interfaceDataObject);
                     schemaFiles[i].setNoInterfaces(noInterfaces);
                     schemaFiles[i].setNoNotification(noNotification);
                     schemaFiles[i].setNoUnsettable(noUnsettable);
@@ -205,6 +216,7 @@
                 schemaFiles[0].setGenerateSwitch(generateSwitch);
                 schemaFiles[0].setNoContainment(noContainment);
                 schemaFiles[0].setNoEMF(noEMF);
+                schemaFiles[0].setInterfaceDataObject(interfaceDataObject);
                 schemaFiles[0].setNoInterfaces(noInterfaces);
                 schemaFiles[0].setNoNotification(noNotification);
                 schemaFiles[0].setNoUnsettable(noUnsettable);
@@ -242,8 +254,11 @@
                 if (schemaFiles[i].isNoEMF() != null && schemaFiles[i].isNoEMF().booleanValue()) {
                     genOptions |= JavaGenerator.OPTION_NO_EMF;
                 }
+                if (schemaFiles[i].isInterfaceDataObject() != null && schemaFiles[i].isInterfaceDataObject().booleanValue()) {
+                    genOptions |= JavaGenerator.OPTION_INTERFACE_DO;
+                }
                 
-                XSD2JavaGenerator.generateFromXMLSchema(file.toString(), targetDirectory, javaPackage, prefix, genOptions);
+                XSD2JavaGenerator.generateFromXMLSchema(file.toString(), null, targetDirectory, javaPackage, prefix, genOptions);
             }
             try {
                 marker.createNewFile();

Modified: incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/SchemaFileOption.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/SchemaFileOption.java?rev=431587&r1=431586&r2=431587&view=diff
==============================================================================
--- incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/SchemaFileOption.java (original)
+++ incubator/tuscany/java/sdo/plugin/src/main/java/org/apache/tuscany/sdo/plugin/SchemaFileOption.java Tue Aug 15 05:32:49 2006
@@ -86,6 +86,13 @@
      * @parameter
      */
     private Boolean noEMF;
+    
+    /**
+     * With this option, generated interfaces will extend commonj.sdo.DataObject.
+     * 
+     * @parameter
+     */
+    private Boolean interfaceDataObject;
 
     public SchemaFileOption() {
     }
@@ -137,7 +144,7 @@
     public void setNoEMF(Boolean noEMF) {
         this.noEMF = noEMF;
     }
-
+    
     public Boolean isNoInterfaces() {
         return noInterfaces;
     }
@@ -185,5 +192,13 @@
     public void setFileName(File fileName) {
         this.fileName = fileName;
     }
+
+	public Boolean isInterfaceDataObject() {
+		return interfaceDataObject;
+	}
+
+	public void setInterfaceDataObject(Boolean interfaceDataObject) {
+		this.interfaceDataObject = interfaceDataObject;
+	}
 
 }

Modified: incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/JavaGenerator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/JavaGenerator.java?rev=431587&r1=431586&r2=431587&view=diff
==============================================================================
--- incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/JavaGenerator.java (original)
+++ incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/JavaGenerator.java Tue Aug 15 05:32:49 2006
@@ -100,8 +100,10 @@
  *         to org.apache.tuscany.sdo.impl.StoreDataObjectImpl. Note that this option generates classes that
  *         require a Store implementation to be provided before they can be run.    
  *     -noEMF
- *       This option is used to generate static classes that have no references to EMF classes.  This 
- *       feature is currently being implemented and is in a preliminary state.  
+ *         This option is used to generate static classes that have no references to EMF classes.  This 
+ *         feature is currently being implemented and is in a preliminary state.  
+ *     -interfaceDataObject
+ *         This option is used to generate static interfaces that extend commonj.sdo.DataObject  
  *         
  *   The following options can be used to increase performance, but with some loss of SDO functionality:
  *   
@@ -162,6 +164,7 @@
   //FIXME Temporary, I need this option for now to get Switch classes generated for the SCDL models
   public static int OPTION_GENERATE_SWITCH=0x100;
   public static int OPTION_NO_EMF=0x200;
+  public static int OPTION_INTERFACE_DO=0x400;
   
   static 
   {
@@ -267,6 +270,10 @@
     {
       genOptions |= OPTION_NO_EMF;
     }
+    else if (args[index].equalsIgnoreCase("-interfaceDataObject"))
+    {
+      genOptions |= OPTION_INTERFACE_DO;
+    }
     //else if (...)
     else
     {
@@ -507,6 +514,11 @@
     if ((genOptions & OPTION_NO_EMF) != 0)
     {
       genModel.setRootExtendsClass("org.apache.tuscany.sdo.impl.DataObjectBase");
+    }
+    
+    if ((genOptions & OPTION_INTERFACE_DO) != 0)
+    {
+      genModel.setRootExtendsInterface("commonj.sdo.DataObject");
     }
     
     GenPackage genPackage = (GenPackage)genModel.getGenPackages().get(0);

Modified: incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java?rev=431587&r1=431586&r2=431587&view=diff
==============================================================================
--- incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java (original)
+++ incubator/tuscany/java/sdo/tools/src/main/java/org/apache/tuscany/sdo/generate/XSD2JavaGenerator.java Tue Aug 15 05:32:49 2006
@@ -169,6 +169,7 @@
     System.out.println("  [ -generateLoader ]");
     System.out.println("  [ -noUnsettable ]");
     System.out.println("  [ -noEMF ]");
+    System.out.println("  [ -interfaceDataObject ]");
     System.out.println("  <xsd-file> | <wsdl-file>");
     System.out.println("");
     System.out.println("For example:");



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org