OSDN Git Service

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

ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/bsbhv/BsTObjectBhv.java
ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/bsdao/pmbean/BsSelectTablesInPackagePmb.java
ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/exbhv/TObjectBhv.java
ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/exbhv/TPackageBhv.java
ea2ddl-dao/src/main/resources/jp/sourceforge/ea2ddl/dao/exbhv/TObjectBhv_selectList.sql [moved from ea2ddl-dao/src/main/resources/jp/sourceforge/ea2ddl/dao/exbhv/TObjectBhv_selectListByStereotype.sql with 82% similarity]
ea2ddl-dao/src/test/java/jp/sourceforge/ea2ddl/dao/exbhv/TPackageBhvTest.java

index 07cfce4..ca1302f 100644 (file)
@@ -60,7 +60,7 @@ public abstract class BsTObjectBhv extends jp.sourceforge.ea2ddl.dao.allcommon.b
     //                                                                          Definition
     //                                                                          ==========
     /*df:BehaviorQueryPathBegin*/
-    public static final String PATH_selectListByStereotype = "selectListByStereotype";
+    public static final String PATH_selectList = "selectList";
     public static final String PATH_selectTableById = "selectTableById";
     /*df:BehaviorQueryPathEnd*/
 
index a6b7699..5f95294 100644 (file)
@@ -16,6 +16,9 @@ public class BsSelectTablesInPackagePmb  {
     /** The value of stereotype. */\r
     protected java.lang.String _stereotype;\r
 \r
+    /** The value of objectType. */\r
+    protected java.lang.String _objectType;\r
+\r
     // ===================================================================================\r
     //                                                                         Constructor\r
     //                                                                         ===========\r
@@ -54,6 +57,7 @@ public class BsSelectTablesInPackagePmb  {
         final StringBuffer sb = new StringBuffer();\r
         sb.append(delimiter).append(_packageId);\r
         sb.append(delimiter).append(_stereotype);\r
+        sb.append(delimiter).append(_objectType);\r
         if (sb.length() > 0) { sb.delete(0, delimiter.length()); }\r
         sb.insert(0, "{").append("}");\r
         return sb.toString();\r
@@ -94,4 +98,20 @@ public class BsSelectTablesInPackagePmb  {
         _stereotype = stereotype;\r
     }\r
 \r
+    /**\r
+     * Get the value of objectType. (Converted empty to null)\r
+     * @return The value of objectType. (Nullable & NotEmptyString: if the value is empty string, returns null)\r
+     */\r
+    public java.lang.String getObjectType() {\r
+        return (java.lang.String)convertEmptyToNullIfString(_objectType);\r
+    }\r
+\r
+    /**\r
+     * Set the value of objectType.\r
+     * @param objectType The value of objectType. (Nullable)\r
+     */\r
+    public void setObjectType(java.lang.String objectType) {\r
+        _objectType = objectType;\r
+    }\r
+\r
 }\r
index 1a9cfe8..07e5859 100644 (file)
@@ -4,21 +4,26 @@ import java.util.List;
 \r
 import javax.persistence.EntityNotFoundException;\r
 \r
-import jp.sourceforge.ea2ddl.dao.cbean.TObjectpropertiesCB;\r
 import jp.sourceforge.ea2ddl.dao.exdao.pmbean.SelectTablesInPackagePmb;\r
 import jp.sourceforge.ea2ddl.dao.exentity.TObject;\r
-import jp.sourceforge.ea2ddl.dao.exentity.TObjectproperties;\r
 import jp.sourceforge.ea2ddl.dao.exentity.TPackage;\r
 \r
 /**\r
  * The behavior of t_object.\r
  * <p>\r
- * You can implement your original methods here.\r
- * This class is NOT overrided when re-generating.\r
+ * You can implement your original methods here. This class is NOT overrided\r
+ * when re-generating.\r
  * </p>\r
+ * \r
  * @author DBFlute(AutoGenerator)\r
  */\r
 public class TObjectBhv extends jp.sourceforge.ea2ddl.dao.bsbhv.BsTObjectBhv {\r
+       private TPackageBhv _tPackageBhv;\r
+\r
+       public void setTPackageBhv(TPackageBhv packageBhv) {\r
+               _tPackageBhv = packageBhv;\r
+       }\r
+\r
        public TObject selectEntity(Integer id) {\r
                final List<TObject> list = outsideSql().selectList(PATH_selectTableById, id, TObject.class);\r
                if (list.size() == 0) {\r
@@ -27,11 +32,25 @@ public class TObjectBhv extends jp.sourceforge.ea2ddl.dao.bsbhv.BsTObjectBhv {
                return list.get(0);\r
        }\r
 \r
+       public List<TObject> selectList(String packageTree, String stereotype, String objectType) {\r
+               final TPackage pkg = _tPackageBhv.selectPackage(packageTree);\r
+               final SelectTablesInPackagePmb pmb = new SelectTablesInPackagePmb();\r
+               pmb.setPackageId(pkg.getPackageId());\r
+               pmb.setStereotype(stereotype);\r
+               pmb.setObjectType(objectType);\r
+               return outsideSql().selectList(PATH_selectList, pmb, TObject.class);\r
+       }\r
+\r
+       public List<TObject> selectListByStereotype(String packageTree, String stereotype) {\r
+               final TPackage pkg = _tPackageBhv.selectPackage(packageTree);\r
+               return selectListByStereotype(pkg, stereotype);\r
+       }\r
+\r
        public List<TObject> selectListByStereotype(TPackage pkg, String stereotype) {\r
                final SelectTablesInPackagePmb pmb = new SelectTablesInPackagePmb();\r
                pmb.setPackageId(pkg.getPackageId());\r
                pmb.setStereotype(stereotype);\r
-               return outsideSql().selectList(PATH_selectListByStereotype, pmb, TObject.class);\r
+               return outsideSql().selectList(PATH_selectList, pmb, TObject.class);\r
        }\r
 \r
 }\r
index 62596b3..fe3cd8f 100644 (file)
@@ -2,18 +2,19 @@ package jp.sourceforge.ea2ddl.dao.exbhv;
 \r
 import javax.persistence.EntityNotFoundException;\r
 \r
-import org.seasar.framework.container.annotation.tiger.Binding;\r
-\r
 import jp.sourceforge.ea2ddl.common.config.Config;\r
 import jp.sourceforge.ea2ddl.dao.cbean.TPackageCB;\r
 import jp.sourceforge.ea2ddl.dao.exentity.TPackage;\r
 \r
+import org.seasar.framework.container.annotation.tiger.Binding;\r
+\r
 /**\r
  * The behavior of t_package.\r
  * <p>\r
- * You can implement your original methods here.\r
- * This class is NOT overrided when re-generating.\r
+ * You can implement your original methods here. This class is NOT overrided\r
+ * when re-generating.\r
  * </p>\r
+ * \r
  * @author DBFlute(AutoGenerator)\r
  */\r
 public class TPackageBhv extends jp.sourceforge.ea2ddl.dao.bsbhv.BsTPackageBhv {\r
@@ -26,28 +27,28 @@ public class TPackageBhv extends jp.sourceforge.ea2ddl.dao.bsbhv.BsTPackageBhv {
 \r
        /**\r
         * パッケージツリーから対象のパッケージオブジェクトを検索する。\r
-        * @param packageTree 対象パッケージのルートからのパス\r
+        * \r
+        * @param packageTree\r
+        *            対象パッケージのルートからのパス\r
         * @return パッケージ\r
         */\r
        public TPackage selectPackage(String packageTree) {\r
                final String[] packageNames = packageTree.split("[/.]");\r
 \r
-               TPackage pkg = selectRoot();\r
+               TPackage pkg = null;\r
                for (int i = 0; i < packageNames.length; i++) {\r
                        final TPackageCB cb = new TPackageCB();\r
-                       cb.query().setParentId_Equal(pkg.getPackageId());\r
+                       if (pkg != null) {\r
+                               cb.query().setParentId_Equal(pkg.getPackageId());\r
+                       }\r
                        cb.query().setName_Equal(packageNames[i]);\r
                        pkg = selectEntity(cb);\r
                        if (pkg == null) {\r
-                               throw new EntityNotFoundException("Package " + packageNames[i] + " in " + packageTree + " is not found.");\r
+                               throw new EntityNotFoundException("Package " + packageNames[i] + " in " + packageTree\r
+                                               + " is not found.");\r
                        }\r
                }\r
                return pkg;\r
        }\r
-       \r
-       public TPackage selectRoot() {\r
-               final TPackageCB cb = new TPackageCB();\r
-               cb.query().setName_Equal(_config.getProperty("root.package.name"));\r
-               return selectEntity(cb);\r
-       }\r
+\r
 }\r
@@ -1,6 +1,7 @@
 -- !SelectTablesInPackagePmb!\r
 -- !!java.lang.Integer packageId!!\r
 -- !!java.lang.String stereotype!!\r
+-- !!java.lang.String objectType!!\r
 select dflocal.Name as [Name], dflocal.Object_ID as Object_ID\r
   , dflocal.Scope as Scope, dflocal.Stereotype as Stereotype\r
   , dflocal.GenOption as GenOption, dflocal.Style as Style\r
@@ -29,8 +30,10 @@ select dflocal.Name as [Name], dflocal.Object_ID as Object_ID
   , dflocal.GenLinks as GenLinks, dflocal.RunState as RunState\r
   , dflocal.Classifier_guid as Classifier_guid\r
   , dflocal.PackageFlags as PackageFlags, dflocal.Multiplicity as Multiplicity \r
-  from t_object dflocal \r
- where\r
-   dflocal.Package_ID = /*pmb.packageId*/21\r
-   and dflocal.Stereotype = /*pmb.stereotype*/'table'\r
+  from t_object dflocal\r
+/*BEGIN*/where\r
+   /*IF pmb.packageId != null*/dflocal.Package_ID = /*pmb.packageId*/21/*END*/\r
+   /*IF pmb.stereotype != null*/and dflocal.Stereotype = /*pmb.stereotype*/'table'/*END*/\r
+   /*IF pmb.objectType != null*/and dflocal.Object_Type = /*pmb.objectType*/'Class'/*END*/\r
+/*END*/\r
  order by dflocal.Name
\ No newline at end of file
index e71634c..6bfbaa5 100644 (file)
@@ -16,16 +16,9 @@ public class TPackageBhvTest {
 \r
        @Test\r
        public void testSelectPackage() {\r
-               final TPackage pkg = _bhv.selectPackage("ã\82¯ã\83©ã\82¹ã\83\93ã\83¥ã\83¼/ERå\9b³/SIMPLEDB");\r
+               final TPackage pkg = _bhv.selectPackage("ã\83\93ã\83¥ã\83¼/ã\82¯ã\83©ã\82¹ã\83\93ã\83¥ã\83¼/ERå\9b³/EXAMPLE");\r
                assertNotNull(pkg);\r
-               assertEquals("SIMPLEDB", pkg.getName());\r
-       }\r
-\r
-       @Test\r
-       public void testSelectRoot() {\r
-               final TPackage root = _bhv.selectRoot();\r
-               assertNotNull(root);\r
-               assertEquals("ビュー", root.getName());\r
+               assertEquals("EXAMPLE", pkg.getName());\r
        }\r
 \r
 }\r