OSDN Git Service

DBFluteのClassificationに対応
authortaktos9 <taktos9@136db618-7844-41ca-8ac1-fb3fd040db1d>
Thu, 23 Oct 2008 09:52:41 +0000 (09:52 +0000)
committertaktos9 <taktos9@136db618-7844-41ca-8ac1-fb3fd040db1d>
Thu, 23 Oct 2008 09:52:41 +0000 (09:52 +0000)
git-svn-id: http://svn.sourceforge.jp/svnroot/ea2ddl/trunk/ea2ddl@46 136db618-7844-41ca-8ac1-fb3fd040db1d

17 files changed:
ea2ddl-ddl/build-ea2ddl.xml
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/GenerateClassificationCommand.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/GenerateDdlCommand.java
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/TemplateCommand.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/ModelFactory.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/impl/ClassificationModelFactoryImpl.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/impl/DatabaseModelFactoryImpl.java
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/ClassificationModel.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/DatabaseModel.java
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/Model.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/task/GenerateClassificationTask.java [new file with mode: 0644]
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/task/TemplateTask.java [new file with mode: 0644]
ea2ddl-ddl/src/main/resources/app.properties
ea2ddl-ddl/src/main/resources/base.ftl
ea2ddl-ddl/src/main/resources/classification.ftl [new file with mode: 0644]
ea2ddl-ddl/src/main/resources/ea2ddl-taskdef.properties
ea2ddl-ddl/src/main/resources/ea2ddl.dicon

index 51b1c8f..2626a11 100644 (file)
                        factoryClassName="jp.sourceforge.ea2ddl.ddl.factory.impl.DatabaseModelFactoryImpl"\r
                        >\r
                </gen-ddl>\r
+               <gen-classification\r
+                       configPath="${configPath}"\r
+                       classpathref="classpath"\r
+                       factoryClassName="jp.sourceforge.ea2ddl.ddl.factory.impl.ClassificationModelFactoryImpl"\r
+                       templateFileName="classification.ftl"\r
+                       outputFileName="classification.txt"\r
+                       >\r
+               </gen-classification>\r
        </target>\r
 </project>\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/GenerateClassificationCommand.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/GenerateClassificationCommand.java
new file mode 100644 (file)
index 0000000..5cf6a72
--- /dev/null
@@ -0,0 +1,81 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.command;\r
+\r
+import java.io.File;\r
+\r
+import jp.sourceforge.ea2ddl.ddl.model.Model;\r
+\r
+import org.seasar.extension.jdbc.gen.generator.GenerationContext;\r
+import org.seasar.extension.jdbc.gen.generator.Generator;\r
+import org.seasar.extension.jdbc.gen.internal.generator.GenerationContextImpl;\r
+import org.seasar.extension.jdbc.gen.internal.generator.GeneratorImpl;\r
+import org.seasar.framework.log.Logger;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public class GenerateClassificationCommand extends TemplateCommand {\r
+       private Logger _logger = Logger.getLogger(GenerateClassificationCommand.class);\r
+\r
+       /*\r
+        * (非 Javadoc)\r
+        * \r
+        * @see\r
+        * org.seasar.extension.jdbc.gen.internal.command.AbstractCommand#doDestroy\r
+        * ()\r
+        */\r
+       @Override\r
+       protected void doDestroy() {\r
+       }\r
+\r
+       /*\r
+        * (非 Javadoc)\r
+        * \r
+        * @see\r
+        * org.seasar.extension.jdbc.gen.internal.command.AbstractCommand#doInit()\r
+        */\r
+       @Override\r
+       protected void doInit() {\r
+       }\r
+\r
+       /*\r
+        * (非 Javadoc)\r
+        * \r
+        * @see\r
+        * org.seasar.extension.jdbc.gen.internal.command.AbstractCommand#doValidate\r
+        * ()\r
+        */\r
+       @Override\r
+       protected void doValidate() {\r
+       }\r
+\r
+       /*\r
+        * (非 Javadoc)\r
+        * \r
+        * @see\r
+        * org.seasar.extension.jdbc.gen.internal.command.AbstractCommand#getLogger\r
+        * ()\r
+        */\r
+       @Override\r
+       protected Logger getLogger() {\r
+               return _logger;\r
+       }\r
+\r
+       @Override\r
+       protected GenerationContext createGenerationContext(Model model) {\r
+               final File output = new File(getOutputDirName(), getOutputFileName());\r
+               final GenerationContextImpl generationContext = new GenerationContextImpl(model, output,\r
+                               getTemplateFileName(), getOutputFileEncoding(), true);\r
+               return generationContext;\r
+       }\r
+\r
+       @Override\r
+       protected Generator createGenerator() {\r
+               final File dir = new File(getTemplateFileDir());\r
+               return new GeneratorImpl(getTemplateFileEncoding(), dir);\r
+       }\r
+\r
+}\r
index 99f9b3e..2e62214 100644 (file)
@@ -5,8 +5,8 @@ package jp.sourceforge.ea2ddl.ddl.command;
 \r
 import java.io.File;\r
 \r
-import jp.sourceforge.ea2ddl.ddl.factory.DatabaseModelFactory;\r
-import jp.sourceforge.ea2ddl.ddl.model.DatabaseModel;\r
+import jp.sourceforge.ea2ddl.ddl.factory.ModelFactory;\r
+import jp.sourceforge.ea2ddl.ddl.model.Model;\r
 \r
 import org.seasar.extension.jdbc.gen.generator.GenerationContext;\r
 import org.seasar.extension.jdbc.gen.generator.Generator;\r
@@ -118,19 +118,18 @@ public class GenerateDdlCommand extends AbstractCommand {
         */\r
        @Override\r
        protected void doExecute() throws Throwable {\r
-               DatabaseModelFactory factory = (DatabaseModelFactory) SingletonS2Container\r
-                               .getComponent(ClassUtil.convertClass(_factoryClassName));\r
-               final DatabaseModel dbModel = factory.create();\r
+               ModelFactory modelFactory = (ModelFactory) SingletonS2Container.getComponent(ClassUtil\r
+                               .convertClass(_factoryClassName));\r
+               final Model dbModel = modelFactory.create();\r
                generate(dbModel);\r
        }\r
 \r
-       protected void generate(DatabaseModel model) {\r
+       protected void generate(Model model) {\r
                final File templateDir = new File(_templateFileDir);\r
-               final Generator generator = new GeneratorImpl(_templateFileEncoding,\r
-                               templateDir);\r
+               final Generator generator = new GeneratorImpl(_templateFileEncoding, templateDir);\r
                File output = new File(_outputDirName, _baseSqlFileName);\r
-               final GenerationContext context = new GenerationContextImpl(model,\r
-                               output, _baseSqlTemplateFileName, _sqlFileEncoding, true);\r
+               final GenerationContext context = new GenerationContextImpl(model, output, _baseSqlTemplateFileName,\r
+                               _sqlFileEncoding, true);\r
                generator.generate(context);\r
        }\r
 \r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/TemplateCommand.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/command/TemplateCommand.java
new file mode 100644 (file)
index 0000000..d81ff4c
--- /dev/null
@@ -0,0 +1,96 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.command;\r
+\r
+import jp.sourceforge.ea2ddl.ddl.factory.ModelFactory;\r
+import jp.sourceforge.ea2ddl.ddl.model.Model;\r
+\r
+import org.seasar.extension.jdbc.gen.generator.GenerationContext;\r
+import org.seasar.extension.jdbc.gen.generator.Generator;\r
+import org.seasar.extension.jdbc.gen.internal.command.AbstractCommand;\r
+import org.seasar.framework.container.SingletonS2Container;\r
+import org.seasar.framework.util.ClassUtil;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public abstract class TemplateCommand extends AbstractCommand {\r
+\r
+       protected String _factoryClassName;\r
+       protected String _templateFileDir = "target/classes";\r
+       protected String _templateFileName;\r
+       protected String _templateFileEncoding = "UTF-8";\r
+       protected String _outputDirName = "output";\r
+       protected String _outputFileName;\r
+       protected String _outputFileEncoding = "UTF-8";\r
+\r
+       public String getFactoryClassName() {\r
+               return _factoryClassName;\r
+       }\r
+\r
+       public void setFactoryClassName(String factoryClassName) {\r
+               _factoryClassName = factoryClassName;\r
+       }\r
+\r
+       public String getTemplateFileDir() {\r
+               return _templateFileDir;\r
+       }\r
+\r
+       public void setTemplateFileDir(String templateFileDir) {\r
+               _templateFileDir = templateFileDir;\r
+       }\r
+\r
+       public String getTemplateFileEncoding() {\r
+               return _templateFileEncoding;\r
+       }\r
+\r
+       public void setTemplateFileEncoding(String templateFileEncoding) {\r
+               _templateFileEncoding = templateFileEncoding;\r
+       }\r
+\r
+       public String getOutputDirName() {\r
+               return _outputDirName;\r
+       }\r
+\r
+       public void setOutputDirName(String outputDirName) {\r
+               _outputDirName = outputDirName;\r
+       }\r
+\r
+       public String getOutputFileName() {\r
+               return _outputFileName;\r
+       }\r
+\r
+       public void setOutputFileName(String outputFileName) {\r
+               _outputFileName = outputFileName;\r
+       }\r
+\r
+       public String getOutputFileEncoding() {\r
+               return _outputFileEncoding;\r
+       }\r
+\r
+       public void setOutputFileEncoding(String outputFileEncoding) {\r
+               _outputFileEncoding = outputFileEncoding;\r
+       }\r
+\r
+       public String getTemplateFileName() {\r
+               return _templateFileName;\r
+       }\r
+\r
+       public void setTemplateFileName(String outputTemplateFileName) {\r
+               _templateFileName = outputTemplateFileName;\r
+       }\r
+\r
+       @Override\r
+       protected void doExecute() throws Throwable {\r
+               final ModelFactory modelFactory = (ModelFactory) SingletonS2Container.getComponent(ClassUtil\r
+                               .convertClass(getFactoryClassName()));\r
+               final Model model = modelFactory.create();\r
+               createGenerator().generate(createGenerationContext(model));\r
+       }\r
+\r
+       protected abstract Generator createGenerator();\r
+\r
+       protected abstract GenerationContext createGenerationContext(Model model);\r
+}\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/ModelFactory.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/ModelFactory.java
new file mode 100644 (file)
index 0000000..7b3e6ec
--- /dev/null
@@ -0,0 +1,15 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.factory;\r
+\r
+import jp.sourceforge.ea2ddl.ddl.model.Model;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public interface ModelFactory {\r
+\r
+       Model create();\r
+}\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/impl/ClassificationModelFactoryImpl.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/factory/impl/ClassificationModelFactoryImpl.java
new file mode 100644 (file)
index 0000000..b17218c
--- /dev/null
@@ -0,0 +1,57 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.factory.impl;\r
+\r
+import java.util.List;\r
+\r
+import jp.sourceforge.ea2ddl.common.config.Config;\r
+import jp.sourceforge.ea2ddl.dao.exbhv.TObjectBhv;\r
+import jp.sourceforge.ea2ddl.dao.exbhv.TPackageBhv;\r
+import jp.sourceforge.ea2ddl.dao.exentity.TObject;\r
+import jp.sourceforge.ea2ddl.dao.exentity.TPackage;\r
+import jp.sourceforge.ea2ddl.ddl.factory.ModelFactory;\r
+import jp.sourceforge.ea2ddl.ddl.model.ClassificationModel;\r
+import jp.sourceforge.ea2ddl.ddl.model.Model;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public class ClassificationModelFactoryImpl implements ModelFactory {\r
+\r
+       private Config _config;\r
+       private TObjectBhv _tObjectBhv;\r
+       private TPackageBhv _tPackageBhv;\r
+\r
+       public void setConfig(Config config) {\r
+               _config = config;\r
+       }\r
+\r
+       public void setTPackageBhv(TPackageBhv packageBhv) {\r
+               _tPackageBhv = packageBhv;\r
+       }\r
+\r
+       public void setTObjectBhv(TObjectBhv objectBhv) {\r
+               _tObjectBhv = objectBhv;\r
+       }\r
+\r
+       /*\r
+        * (非 Javadoc)\r
+        * \r
+        * @see jp.sourceforge.ea2ddl.ddl.factory.ModelFactory#create()\r
+        */\r
+       public Model create() {\r
+               final ClassificationModel model = new ClassificationModel();\r
+               final List<TObject> noteList = _tObjectBhv.selectList(_config.getProperty("er.package.tree"), null, "Note");\r
+               for (TObject note : noteList) {\r
+                       model.addClassification(note.getNote());\r
+               }\r
+               return model;\r
+       }\r
+\r
+       protected TPackage getPackage(String packageTree) {\r
+               return _tPackageBhv.selectPackage(packageTree);\r
+       }\r
+\r
+}\r
index 5503e3e..055aca6 100644 (file)
@@ -23,7 +23,7 @@ import jp.sourceforge.ea2ddl.dao.exentity.TObject;
 import jp.sourceforge.ea2ddl.dao.exentity.TOperation;\r
 import jp.sourceforge.ea2ddl.dao.exentity.TOperationparams;\r
 import jp.sourceforge.ea2ddl.dao.exentity.TPackage;\r
-import jp.sourceforge.ea2ddl.ddl.factory.DatabaseModelFactory;\r
+import jp.sourceforge.ea2ddl.ddl.factory.ModelFactory;\r
 import jp.sourceforge.ea2ddl.ddl.model.ColumnModel;\r
 import jp.sourceforge.ea2ddl.ddl.model.DatabaseModel;\r
 import jp.sourceforge.ea2ddl.ddl.model.ForeignKeyModel;\r
@@ -39,7 +39,7 @@ import org.seasar.framework.container.annotation.tiger.Binding;
  * @author taktos\r
  * \r
  */\r
-public class DatabaseModelFactoryImpl implements DatabaseModelFactory {\r
+public class DatabaseModelFactoryImpl implements ModelFactory {\r
        private Log _log = LogFactory.getLog(DatabaseModelFactoryImpl.class);\r
 \r
        private Config _config;\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/ClassificationModel.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/ClassificationModel.java
new file mode 100644 (file)
index 0000000..b952836
--- /dev/null
@@ -0,0 +1,36 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.model;\r
+\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public class ClassificationModel extends Model {\r
+       private static final long serialVersionUID = 1L;\r
+\r
+       private List<String> classificationList;\r
+\r
+       public List<String> getClassificationList() {\r
+               if (classificationList == null) {\r
+                       synchronized (this) {\r
+                               if (classificationList == null) {\r
+                                       classificationList = new ArrayList<String>();\r
+                               }\r
+                       }\r
+               }\r
+               return classificationList;\r
+       }\r
+\r
+       public void setClassificationList(List<String> classificationList) {\r
+               this.classificationList = classificationList;\r
+       }\r
+\r
+       public void addClassification(String classification) {\r
+               getClassificationList().add(classification);\r
+       }\r
+}\r
index b5d19dd..25eba8e 100644 (file)
@@ -3,7 +3,6 @@
  */\r
 package jp.sourceforge.ea2ddl.ddl.model;\r
 \r
-import java.io.Serializable;\r
 import java.util.ArrayList;\r
 import java.util.List;\r
 \r
@@ -11,7 +10,7 @@ import java.util.List;
  * @author taktos\r
  * \r
  */\r
-public class DatabaseModel implements Serializable {\r
+public class DatabaseModel extends Model {\r
        private static final long serialVersionUID = 1L;\r
 \r
        private List<TableModel> _tableList;\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/Model.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/Model.java
new file mode 100644 (file)
index 0000000..add9b08
--- /dev/null
@@ -0,0 +1,15 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.model;\r
+\r
+import java.io.Serializable;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public abstract class Model implements Serializable {\r
+       private static final long serialVersionUID = 1L;\r
+\r
+}\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/task/GenerateClassificationTask.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/task/GenerateClassificationTask.java
new file mode 100644 (file)
index 0000000..ac4b4c8
--- /dev/null
@@ -0,0 +1,22 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.task;\r
+\r
+import jp.sourceforge.ea2ddl.ddl.command.GenerateClassificationCommand;\r
+import jp.sourceforge.ea2ddl.ddl.command.TemplateCommand;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public class GenerateClassificationTask extends TemplateTask {\r
+\r
+       protected GenerateClassificationCommand _command = new GenerateClassificationCommand();\r
+\r
+       @Override\r
+       protected TemplateCommand getTemplateCommand() {\r
+               return _command;\r
+       }\r
+\r
+}\r
diff --git a/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/task/TemplateTask.java b/ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/task/TemplateTask.java
new file mode 100644 (file)
index 0000000..b6e91b8
--- /dev/null
@@ -0,0 +1,56 @@
+/**\r
+ * \r
+ */\r
+package jp.sourceforge.ea2ddl.ddl.task;\r
+\r
+import jp.sourceforge.ea2ddl.ddl.command.TemplateCommand;\r
+\r
+import org.seasar.extension.jdbc.gen.command.Command;\r
+import org.seasar.extension.jdbc.gen.task.AbstractTask;\r
+\r
+/**\r
+ * @author taktos\r
+ * \r
+ */\r
+public abstract class TemplateTask extends AbstractTask {\r
+\r
+       protected abstract TemplateCommand getTemplateCommand();\r
+\r
+       @Override\r
+       protected Command getCommand() {\r
+               return getTemplateCommand();\r
+       }\r
+\r
+       public void setConfigPath(String configPath) {\r
+               getTemplateCommand().setConfigPath(configPath);\r
+       }\r
+\r
+       public void setFactoryClassName(String className) {\r
+               getTemplateCommand().setFactoryClassName(className);\r
+       }\r
+\r
+       public void setTemplateFileDir(String templateFileDir) {\r
+               getTemplateCommand().setTemplateFileDir(templateFileDir);\r
+       }\r
+\r
+       public void setTemplateFileName(String templateFileName) {\r
+               getTemplateCommand().setTemplateFileName(templateFileName);\r
+       }\r
+\r
+       public void setTemplateFileEncoding(String templateFileEncoding) {\r
+               getTemplateCommand().setTemplateFileEncoding(templateFileEncoding);\r
+       }\r
+\r
+       public void setOutputDirName(String outputDirName) {\r
+               getTemplateCommand().setOutputDirName(outputDirName);\r
+       }\r
+\r
+       public void setOutputFileName(String outputFileName) {\r
+               getTemplateCommand().setOutputFileName(outputFileName);\r
+       }\r
+\r
+       public void setOutputFileEncoding(String outputFileEncoding) {\r
+               getTemplateCommand().setOutputFileEncoding(outputFileEncoding);\r
+       }\r
+\r
+}\r
index 47e566d..6374ce7 100644 (file)
@@ -1,2 +1 @@
-root.package.name=\u30d3\u30e5\u30fc\r
-er.package.tree=\u30af\u30e9\u30b9\u30d3\u30e5\u30fc/ER\u56f3/MFGS
\ No newline at end of file
+er.package.tree=\u30d3\u30e5\u30fc/\u30af\u30e9\u30b9\u30d3\u30e5\u30fc/ER\u56f3/EXAMPLEDB
\ No newline at end of file
index c77a08f..72da61f 100644 (file)
@@ -1,3 +1,4 @@
+<#comment>\r
 <#list tableList as table>\r
 <#list table.foreignKeyList as fk>ALTER TABLE ${table.name} DROP CONSTRAINT ${fk.name}\r
 ;\r
@@ -6,6 +7,7 @@
 <#list tableList as table>\r
 DROP TABLE ${table.name};\r
 </#list>\r
+</#comment>\r
 \r
 <#list tableList as table>\r
 CREATE TABLE ${table.name} (\r
diff --git a/ea2ddl-ddl/src/main/resources/classification.ftl b/ea2ddl-ddl/src/main/resources/classification.ftl
new file mode 100644 (file)
index 0000000..4ba0f71
--- /dev/null
@@ -0,0 +1,4 @@
+<#list classificationList as cls>\r
+${cls}\r
+\r
+</#list>
\ No newline at end of file
index 6c3baa5..3be2361 100644 (file)
@@ -1 +1,2 @@
-gen-ddl=jp.sourceforge.ea2ddl.ddl.task.GenerateDdlTask
\ No newline at end of file
+gen-ddl=jp.sourceforge.ea2ddl.ddl.task.GenerateDdlTask\r
+gen-classification=jp.sourceforge.ea2ddl.ddl.task.GenerateClassificationTask
\ No newline at end of file
index 03940e1..eed598a 100644 (file)
@@ -8,7 +8,7 @@
 \r
     <component class="org.seasar.framework.container.autoregister.ComponentAutoRegister">\r
                <initMethod name="addReferenceClass">\r
-                       <arg>@jp.sourceforge.ea2ddl.ddl.factory.DatabaseModelFactory@class</arg>\r
+                       <arg>@jp.sourceforge.ea2ddl.ddl.factory.ModelFactory@class</arg>\r
                </initMethod>\r
                <initMethod name="addClassPattern">\r
                        <arg>"jp.sourceforge.ea2ddl.ddl.factory.impl"</arg>\r