Author: jsdelfino
Date: Tue Feb 28 23:49:30 2006
New Revision: 381939

URL: http://svn.apache.org/viewcvs?rev=381939&view=rev
Log:
integrated SCA WSDL2Java tool with the Axis 2 WSDL2Java code generator - first 
stable version of the command line tool and Maven plugin

Added:
    
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java
   (with props)
    
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java
   (with props)
Modified:
    
incubator/tuscany/java/sca/plugin/src/main/java/org/apache/tuscany/tools/wsdl2java/plugin/WSDL2JavaGeneratorMojo.java
    incubator/tuscany/java/sca/tools/pom.xml
    
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/WSDL2JavaGenerator.java

Modified: 
incubator/tuscany/java/sca/plugin/src/main/java/org/apache/tuscany/tools/wsdl2java/plugin/WSDL2JavaGeneratorMojo.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/plugin/src/main/java/org/apache/tuscany/tools/wsdl2java/plugin/WSDL2JavaGeneratorMojo.java?rev=381939&r1=381938&r2=381939&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/plugin/src/main/java/org/apache/tuscany/tools/wsdl2java/plugin/WSDL2JavaGeneratorMojo.java
 (original)
+++ 
incubator/tuscany/java/sca/plugin/src/main/java/org/apache/tuscany/tools/wsdl2java/plugin/WSDL2JavaGeneratorMojo.java
 Tue Feb 28 23:49:30 2006
@@ -79,8 +79,8 @@
             File file = files[i];
             File marker = new File(targetDirectory, ".gen#" + file.getName());
             if (file.lastModified() > marker.lastModified()) {
-                getLog().info("Generating SDO interfaces from " + file);
-                WSDL2JavaGenerator.generateFromWSDL(file.toString(), 
targetDirectory, javaPackage, genOptions);
+                getLog().info("Generating Java service interfaces from " + 
file);
+                WSDL2JavaGenerator.generateFromWSDL(file.toString(), 
targetDirectory, javaPackage, null, genOptions);
             }
             try {
                 marker.createNewFile();

Modified: incubator/tuscany/java/sca/tools/pom.xml
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tools/pom.xml?rev=381939&r1=381938&r2=381939&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tools/pom.xml (original)
+++ incubator/tuscany/java/sca/tools/pom.xml Tue Feb 28 23:49:30 2006
@@ -43,6 +43,12 @@
             <version>SNAPSHOT</version>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>org.apache.tuscany</groupId>
+            <artifactId>tuscany-model</artifactId>
+            <version>SNAPSHOT</version>
+            <scope>compile</scope>
+        </dependency>
 
         <dependency>
             <groupId>org.eclipse.emf</groupId>
@@ -83,14 +89,14 @@
             <groupId>commons-logging</groupId>
             <artifactId>commons-logging</artifactId>
             <version>1.0.4</version>
-            <scope>test</scope>
+            <scope>compile</scope>
         </dependency>
 
         <dependency>
             <groupId>log4j</groupId>
             <artifactId>log4j</artifactId>
             <version>1.2.12</version>
-            <scope>test</scope>
+            <scope>compile</scope>
         </dependency>
 
         <dependency>

Added: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java?rev=381939&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java
 (added)
+++ 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java
 Tue Feb 28 23:49:30 2006
@@ -0,0 +1,142 @@
+/**
+ *
+ *  Copyright 2005 BEA Systems Inc.
+ *  Copyright 2005 International Business Machines Corporation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tuscany.tools.wsdl2java.generate;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.wsdl.WSDLException;
+import javax.xml.namespace.QName;
+
+import org.apache.axis2.i18n.Messages;
+import org.apache.axis2.util.FileWriter;
+import org.apache.axis2.wsdl.builder.WOMBuilderFactory;
+import org.apache.axis2.wsdl.codegen.CodeGenConfiguration;
+import org.apache.axis2.wsdl.codegen.CodeGenerationException;
+import org.apache.axis2.wsdl.codegen.emitter.JavaEmitter;
+import org.apache.axis2.wsdl.codegen.extension.CodeGenExtension;
+import org.apache.axis2.wsdl.codegen.extension.DefaultDatabindingExtension;
+import org.apache.axis2.wsdl.codegen.extension.PackageFinder;
+import org.apache.axis2.wsdl.codegen.extension.WSDLValidatorExtension;
+import org.apache.axis2.wsdl.codegen.writer.InterfaceWriter;
+import org.apache.axis2.wsdl.databinding.JavaTypeMapper;
+import org.apache.axis2.wsdl.i18n.CodegenMessages;
+import org.apache.tuscany.model.util.XMLNameUtil;
+import org.apache.wsdl.WSDLDescription;
+import org.w3c.dom.Document;
+
+public class JavaInterfaceGenerator {
+
+    private List codegenExtensions = new ArrayList();
+    private CodeGenConfiguration codegenConfiguration;
+
+    public JavaInterfaceGenerator(String uri, String outputLocation, String 
packageName, Map<QName, String> typeMapping) throws CodeGenerationException {
+        WSDLDescription wom;
+        try {
+            wom = 
WOMBuilderFactory.getBuilder(org.apache.wsdl.WSDLConstants.WSDL_1_1).build(uri).getDescription();
+        } catch (WSDLException e) {
+            throw new 
CodeGenerationException(CodegenMessages.getMessage("engine.wsdlParsingException"),
 e);
+        }
+        
+        if (packageName==null)
+            
packageName=XMLNameUtil.getPackageNameFromNamespace(wom.getTargetNameSpace());
+        
+        JavaTypeMapper typeMapper=new JavaTypeMapper();
+        for (Map.Entry<QName, String> e : typeMapping.entrySet() ) {
+            typeMapper.addTypeMappingName(e.getKey(), e.getValue());
+        }
+
+        codegenConfiguration = new CodeGenConfiguration(wom, new HashMap());
+        codegenConfiguration.setAdvancedCodeGenEnabled(false);
+        codegenConfiguration.setAsyncOn(false);
+        codegenConfiguration.setCodeGenerationStyle(0);
+        codegenConfiguration.setDatabindingType("sdo");
+        codegenConfiguration.setGenerateAll(true);
+        codegenConfiguration.setGenerateDeployementDescriptor(false);
+        codegenConfiguration.setOutputLanguage("java");
+        codegenConfiguration.setOutputLocation(new File(outputLocation));
+        codegenConfiguration.setPackageName(packageName);
+        codegenConfiguration.setPackClasses(true);
+        codegenConfiguration.setPolicyMap(new HashMap());
+        codegenConfiguration.setPortName(null);
+        codegenConfiguration.setServerSide(false);
+        codegenConfiguration.setServiceName(null);
+        codegenConfiguration.setSyncOn(true);
+        codegenConfiguration.setTypeMapper(typeMapper);
+        codegenConfiguration.setWriteMessageReceiver(false);
+        codegenConfiguration.setWriteTestCase(false);
+        
+        addExtension(new WSDLValidatorExtension());
+        addExtension(new PackageFinder());
+        addExtension(new SDODataBindingCodegenExtension(typeMapper));
+        addExtension(new DefaultDatabindingExtension());
+    }
+
+    private void addExtension(CodeGenExtension ext) {
+        ext.init(codegenConfiguration);
+        codegenExtensions.add(ext);
+    }
+
+
+    public void generate() throws CodeGenerationException {
+        try {
+            for (int i = 0; i < codegenExtensions.size(); i++) {
+                ((CodeGenExtension) codegenExtensions.get(i)).engage();
+            }
+
+            class JavaInterfaceEmitter extends JavaEmitter {
+
+                protected void writeInterface(boolean writeDatabinders) throws 
Exception {
+                    Document interfaceModel = 
createDOMDocumentForInterface(writeDatabinders);
+                    if (!configuration.getOutputLocation().exists()) {
+                        configuration.getOutputLocation().mkdirs();
+                    }
+                    InterfaceWriter interfaceWriter =
+                            new 
InterfaceWriter(this.configuration.getOutputLocation(),
+                                    this.configuration.getOutputLanguage());
+
+                    String packageName = 
interfaceModel.getDocumentElement().getAttribute("package");
+                    String className = 
interfaceModel.getDocumentElement().getAttribute("name");
+
+                    System.out.println(">>  Generating Java class 
"+packageName+"."+className);
+                    File outputFile = 
FileWriter.createClassFile(this.configuration.getOutputLocation(), packageName, 
className, ".java");
+                    if (outputFile.exists())
+                        outputFile.delete();
+                    
+                    writeClass(interfaceModel, interfaceWriter);
+                };
+
+            };
+            
+            JavaInterfaceEmitter emitter=new JavaInterfaceEmitter();
+            emitter.setCodeGenConfiguration(codegenConfiguration);
+            emitter.setMapper(codegenConfiguration.getTypeMapper());
+
+            emitter.writeInterface(false);
+
+        } catch (Exception e) {
+            throw new CodeGenerationException(e);
+        }
+    }
+
+
+}

Propchange: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/JavaInterfaceGenerator.java
------------------------------------------------------------------------------
    svn:keywords = Rev,Date

Added: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java?rev=381939&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java
 (added)
+++ 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java
 Tue Feb 28 23:49:30 2006
@@ -0,0 +1,48 @@
+/**
+ *
+ *  Copyright 2005 BEA Systems Inc.
+ *  Copyright 2005 International Business Machines Corporation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tuscany.tools.wsdl2java.generate;
+
+import org.apache.axis2.wsdl.codegen.extension.AbstractDBProcessingExtension;
+import org.apache.axis2.wsdl.databinding.TypeMapper;
+
+/**
+ * SDO data binding codegen extension.
+ */
+public class SDODataBindingCodegenExtension extends 
AbstractDBProcessingExtension {
+
+    private TypeMapper typeMapper;
+    
+    public SDODataBindingCodegenExtension(TypeMapper typeMapper) {
+        this.typeMapper=typeMapper;
+    }
+    
+    protected boolean testFallThrough(String dbFrameworkName) {
+        return !dbFrameworkName.equals("sdo");
+    }
+
+    public void engage() {
+        if (testFallThrough(configuration.getDatabindingType())) {
+            return;
+        }
+        
+        // Set the type mapper into the config
+        configuration.setTypeMapper(typeMapper);
+
+    }
+
+}

Propchange: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/SDODataBindingCodegenExtension.java
------------------------------------------------------------------------------
    svn:keywords = Rev,Date

Modified: 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/WSDL2JavaGenerator.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/WSDL2JavaGenerator.java?rev=381939&r1=381938&r2=381939&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/WSDL2JavaGenerator.java
 (original)
+++ 
incubator/tuscany/java/sca/tools/src/main/java/org/apache/tuscany/tools/wsdl2java/generate/WSDL2JavaGenerator.java
 Tue Feb 28 23:49:30 2006
@@ -23,36 +23,37 @@
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 import java.util.StringTokenizer;
 
-import org.apache.axis2.wsdl.WSDL2Java;
+import javax.xml.namespace.QName;
+
 import org.apache.tuscany.sdo.helper.XSDHelperImpl;
 import org.apache.tuscany.sdo.util.DataObjectUtil;
+import org.eclipse.emf.codegen.ecore.genmodel.GenClass;
 import org.eclipse.emf.codegen.ecore.genmodel.GenModel;
 import org.eclipse.emf.codegen.ecore.genmodel.GenModelFactory;
 import org.eclipse.emf.codegen.ecore.genmodel.GenPackage;
 import org.eclipse.emf.codegen.util.CodeGenUtil;
-import org.eclipse.emf.common.util.BasicMonitor;
 import org.eclipse.emf.common.util.Diagnostic;
 import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
 import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.impl.EPackageRegistryImpl;
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.ResourceSet;
 import org.eclipse.emf.ecore.util.BasicExtendedMetaData;
-import org.eclipse.emf.ecore.util.Diagnostician;
 import org.eclipse.emf.ecore.util.ExtendedMetaData;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDResourceImpl;
 
 import commonj.sdo.helper.XSDHelper;
 
 
-public class WSDL2JavaGenerator
-{
+public class WSDL2JavaGenerator {
   
   /**
    * Generate Java interfaces from WSDL
@@ -79,14 +80,6 @@
    */
   public static void main(String args[])
   {
-      try {
-          WSDL2Java.main(args);
-      } catch (Exception e) {
-          throw new IllegalArgumentException(e);
-      }
-      if (true)
-          return;
-      
     if (args.length == 0)
     {
       printUsage();
@@ -95,7 +88,8 @@
     
     
     String targetDirectory = null;
-    String javaPackage = null;
+    String wsdlJavaPackage = null;
+    String xsdJavaPackage = null;
     
     int genOptions = 0;
 
@@ -108,7 +102,7 @@
       }
       else if (args[index].equalsIgnoreCase("-javaPackage"))
       {
-        javaPackage = args[++index];
+        wsdlJavaPackage = args[++index];
       }
       //else if (...)
       else
@@ -117,101 +111,102 @@
         return;
       }
     }
-
+    
     String wsdlFileName = args[index];
+    if (wsdlFileName==null || targetDirectory==null) {
+        printUsage();
+        return;
+    }
+
+    generateFromWSDL(wsdlFileName, targetDirectory, wsdlJavaPackage, 
xsdJavaPackage, 0);
     
-    generateFromWSDL(wsdlFileName, targetDirectory, javaPackage, 0);
   }
 
-  public static void generateFromWSDL(String xsdFileName, String 
targetDirectory, String javaPackage, int genOptions)
+  public static void generateFromWSDL(String wsdlFileName, String 
targetDirectory, String wsdlJavaPackage, String xsdJavaPackage, int genOptions)
   {
     DataObjectUtil.initRuntime();
-    EPackage.Registry packageRegistry = new 
EPackageRegistryImpl(EPackage.Registry.INSTANCE)
-    {
-      public EPackage firstPackage = null;
-            
-    };
+    EPackage.Registry packageRegistry = new 
EPackageRegistryImpl(EPackage.Registry.INSTANCE);
     ExtendedMetaData extendedMetaData = new 
BasicExtendedMetaData(packageRegistry);
     XSDHelper xsdHelper = new XSDHelperImpl(extendedMetaData);
 
     try
     {
-      File inputFile = new File(xsdFileName).getAbsoluteFile();
+      File inputFile = new File(wsdlFileName).getAbsoluteFile();
       InputStream inputStream = new FileInputStream(inputFile);
       xsdHelper.define(inputStream, inputFile.toURI().toString());
 
       if (targetDirectory == null)
       {
-        targetDirectory = new File(xsdFileName).getCanonicalFile().getParent();
+        targetDirectory = new 
File(wsdlFileName).getCanonicalFile().getParent();
       }
       else
       {
         targetDirectory = new File(targetDirectory).getCanonicalPath();
       }
 
+      Map<QName, String> typeMapping=new HashMap<QName, String>();
       if (!packageRegistry.values().isEmpty())
       {
-        String packageURI = getSchemaNamespace(xsdFileName);
         ResourceSet resourceSet = DataObjectUtil.createResourceSet();
-        
-        List usedGenPackages = new ArrayList();
-        GenModel genModel = null;
+
+        List<GenPackage> genPackages=new ArrayList<GenPackage>();
+        Map<EClass, GenClass> genClasses=new HashMap<EClass, GenClass>();
         
         for (Iterator iter = packageRegistry.values().iterator(); 
iter.hasNext();)
         {
           EPackage currentEPackage = (EPackage)iter.next();
-          String currentBasePackage = extractBasePackageName(currentEPackage, 
javaPackage);
+          String currentBasePackage = extractBasePackageName(currentEPackage, 
xsdJavaPackage);
           String currentPrefix = 
CodeGenUtil.capName(currentEPackage.getName());
           
           GenPackage currentGenPackage = createGenPackage(currentEPackage, 
currentBasePackage, currentPrefix, genOptions, resourceSet);
-          if (currentEPackage.getNsURI().equals(packageURI))
-          {
-            genModel = currentGenPackage.getGenModel();
-          }
-          else
-          {
-            usedGenPackages.add(currentGenPackage);
+          genPackages.add(currentGenPackage);
+          for (GenClass genClass : 
(List<GenClass>)currentGenPackage.getGenClasses()) {
+              genClasses.put(genClass.getEcoreClass(), genClass);
           }
+          
         }
-        
-        genModel.getUsedGenPackages().addAll(usedGenPackages);
-        generateFromGenModel(genModel, targetDirectory);
-      }
 
-      /*
-      for (Iterator iter = packageRegistry.values().iterator(); 
iter.hasNext();)
-      {
-        EPackage ePackage = (EPackage)iter.next();
-        String basePackage = extractBasePackageName(ePackage, javaPackage);
-        if (prefix == null)
-        {
-          prefix = CodeGenUtil.capName(ePackage.getName());
+        for (GenPackage currentGenPackage : genPackages) {
+            EPackage currentEPackage=currentGenPackage.getEcorePackage();
+            for (GenClass genClass : 
(List<GenClass>)currentGenPackage.getGenClasses()) {
+                QName qname=new 
QName(extendedMetaData.getNamespace(currentEPackage), 
extendedMetaData.getName(genClass.getEcoreClass()));
+                String 
interfaceName=currentGenPackage.getInterfacePackageName()+'.'+genClass.getInterfaceName();
+                typeMapping.put(qname, interfaceName);
+            }
+            
+            EClass 
documentRoot=extendedMetaData.getDocumentRoot(currentEPackage);
+            if (documentRoot!=null) {
+                for (EStructuralFeature element  : 
(List<EStructuralFeature>)extendedMetaData.getElements(documentRoot)) {
+                    EClassifier elementType=element.getEType();
+                    if (elementType instanceof EClass) {
+                        GenClass genClass=genClasses.get(elementType);
+                        QName qname=new 
QName(extendedMetaData.getNamespace(currentEPackage), 
extendedMetaData.getName(element));
+                        String 
interfaceName=genClass.getGenPackage().getInterfacePackageName()+'.'+genClass.getInterfaceName();
+                        typeMapping.put(qname, interfaceName);
+                    } else if (elementType instanceof EClassifier) {
+                        QName qname=new 
QName(extendedMetaData.getNamespace(currentEPackage), 
extendedMetaData.getName(element));
+                        String 
interfaceName=elementType.getInstanceClass().getName();
+                        typeMapping.put(qname, interfaceName);
+                    }
+                }
+            }
         }
-        generateFromEPackage(ePackage, targetDirectory, basePackage, prefix, 
genOptions);
       }
-      */
+
+      try {
+          JavaInterfaceGenerator codeGenerator=new 
JavaInterfaceGenerator(wsdlFileName, targetDirectory, wsdlJavaPackage, 
typeMapping);
+          codeGenerator.generate();
+      } catch (Exception e) {
+          throw new IllegalArgumentException(e);
+      }
+      
     }
     catch (IOException e)
     {
-      e.printStackTrace();
+      throw new IllegalArgumentException(e);
     }
   }
   
-  public static String getSchemaNamespace(String xsdFileName)
-  {
-    File inputFile = new File(xsdFileName).getAbsoluteFile();
-    ResourceSet resourceSet = DataObjectUtil.createResourceSet();
-    Resource model = 
resourceSet.createResource(URI.createURI(inputFile.toURI().toString()));
-    try {
-      InputStream inputStream = new FileInputStream(inputFile);
-      ((XSDResourceImpl)model).load(inputStream, null);
-    }
-    catch (Exception e) {}
-    XSDSchema schema = (XSDSchema)model.getContents().get(0);
-    return schema.getTargetNamespace();
-
-  }
-
   public static GenPackage createGenPackage(EPackage ePackage, String 
basePackage, String prefix, int genOptions, ResourceSet resourceSet)
   {
     GenModel genModel = ecore2GenModel(ePackage, basePackage, prefix, 
genOptions);
@@ -226,48 +221,6 @@
     genModelResource.getContents().add(genModel);
 
     return (GenPackage)genModel.getGenPackages().get(0);
-  }
-
-  public static void generateFromEPackage(EPackage ePackage, String 
targetDirectory, String basePackage, String prefix, int genOptions)
-  {
-    GenModel genModel = ecore2GenModel(ePackage, basePackage, prefix, 
genOptions);
-
-    ResourceSet resourceSet = DataObjectUtil.createResourceSet();
-    URI ecoreURI = URI.createURI("file:///temp.ecore");
-    URI genModelURI = 
ecoreURI.trimFileExtension().appendFileExtension("genmodel");
-
-    Resource ecoreResource = resourceSet.createResource(ecoreURI);
-    ecoreResource.getContents().add(ePackage);
-
-    Resource genModelResource = resourceSet.createResource(genModelURI);
-    genModelResource.getContents().add(genModel);
-
-    generateFromGenModel(genModel, targetDirectory);
-  }
-
-  public static void generateFromGenModel(GenModel genModel, String 
targetDirectory)
-  {
-    Resource resource = genModel.eResource();
-
-    if (targetDirectory != null)
-    {
-      resource.getResourceSet().getURIConverter().getURIMap().put(
-        URI.createURI("platform:/resource/TargetProject/"),
-        URI.createFileURI(targetDirectory + "/"));
-      genModel.setModelDirectory("/TargetProject");
-    }
-
-    genModel.gen(new BasicMonitor.Printing(System.out));
-
-    for (Iterator j = resource.getContents().iterator(); j.hasNext();)
-    {
-      EObject eObject = (EObject)j.next();
-      Diagnostic diagnostic = Diagnostician.INSTANCE.validate(eObject);
-      if (diagnostic.getSeverity() != Diagnostic.OK)
-      {
-        printDiagnostic(diagnostic, "");
-      }
-    }
   }
 
   public static GenModel ecore2GenModel(EPackage ePackage, String basePackage, 
String prefix, int genOptions)


Reply via email to