OSDN Git Service

MySQLのAUTO_INCREMENTに対応した
authortaktos9 <taktos9@136db618-7844-41ca-8ac1-fb3fd040db1d>
Mon, 5 Sep 2011 01:36:54 +0000 (01:36 +0000)
committertaktos9 <taktos9@136db618-7844-41ca-8ac1-fb3fd040db1d>
Mon, 5 Sep 2011 01:36:54 +0000 (01:36 +0000)
git-svn-id: http://svn.sourceforge.jp/svnroot/ea2ddl/trunk/ea2ddl@120 136db618-7844-41ca-8ac1-fb3fd040db1d

ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/exbhv/TAttributeBhv.java
ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/exbhv/TAttributetagBhv.java
ea2ddl-dao/src/main/java/jp/sourceforge/ea2ddl/dao/exentity/TAttribute.java
ea2ddl-ddl/src/main/java/jp/sourceforge/ea2ddl/ddl/model/ColumnModel.java

index a3db57b..abb9d3e 100644 (file)
@@ -15,11 +15,22 @@ import org.seasar.dbflute.cbean.ListResultBean;
  * \r
  * @author DBFlute(AutoGenerator)\r
  */\r
-public class TAttributeBhv extends jp.sourceforge.ea2ddl.dao.bsbhv.BsTAttributeBhv {\r
+public class TAttributeBhv extends\r
+               jp.sourceforge.ea2ddl.dao.bsbhv.BsTAttributeBhv {\r
+       private TAttributetagBhv _tAttributetagBhv;\r
+\r
+       public void setTAttributetagBhv(TAttributetagBhv tAttributetagBhv) {\r
+               _tAttributetagBhv = tAttributetagBhv;\r
+       }\r
+\r
        public ListResultBean<TAttribute> selectColumns(TObject table) {\r
                final TAttributeCB cb = new TAttributeCB();\r
                cb.query().setObjectId_Equal(table.getObjectId());\r
                cb.query().addOrderBy_Pos_Asc();\r
-               return selectList(cb);\r
+               ListResultBean<TAttribute> list = selectList(cb);\r
+               for (TAttribute tAttribute : list) {\r
+                       _tAttributetagBhv.loadTags(tAttribute);\r
+               }\r
+               return list;\r
        }\r
 }\r
index 296ff97..a38a221 100644 (file)
@@ -1,13 +1,34 @@
 package jp.sourceforge.ea2ddl.dao.exbhv;\r
 \r
+import java.util.HashMap;\r
+import java.util.Map;\r
+\r
+import jp.sourceforge.ea2ddl.dao.cbean.TAttributetagCB;\r
+import jp.sourceforge.ea2ddl.dao.exentity.TAttribute;\r
+import jp.sourceforge.ea2ddl.dao.exentity.TAttributetag;\r
+\r
+import org.seasar.dbflute.cbean.ListResultBean;\r
+\r
 /**\r
  * The behavior of t_attributetag.\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
- */
-@SuppressWarnings("unchecked")\r
-public class TAttributetagBhv extends jp.sourceforge.ea2ddl.dao.bsbhv.BsTAttributetagBhv {\r
+ */\r
+public class TAttributetagBhv extends\r
+               jp.sourceforge.ea2ddl.dao.bsbhv.BsTAttributetagBhv {\r
+\r
+       public void loadTags(TAttribute attribute) {\r
+               TAttributetagCB cb = new TAttributetagCB();\r
+               cb.query().setElementid_Equal(attribute.getId());\r
+               ListResultBean<TAttributetag> list = selectList(cb);\r
+               Map<String, TAttributetag> map = new HashMap<String, TAttributetag>();\r
+               for (TAttributetag tAttributetag : list) {\r
+                       map.put(tAttributetag.getProperty(), tAttributetag);\r
+               }\r
+               attribute.setTags(map);\r
+       }\r
 }\r
index 52359e0..ce2786c 100644 (file)
@@ -1,15 +1,29 @@
 package jp.sourceforge.ea2ddl.dao.exentity;\r
 \r
+import java.util.Map;\r
+\r
 /**\r
  * The entity of t_attribute.\r
  * <p>\r
- * You can implement your original methods here.\r
- * This class remains when re-generating.\r
+ * You can implement your original methods here. This class remains when\r
+ * re-generating.\r
  * </p>\r
+ * \r
  * @author DBFlute(AutoGenerator)\r
  */\r
 public class TAttribute extends jp.sourceforge.ea2ddl.dao.bsentity.BsTAttribute {\r
 \r
-    /** Serial version UID. (Default) */\r
-    private static final long serialVersionUID = 1L;\r
+       /** Serial version UID. (Default) */\r
+       private static final long serialVersionUID = 1L;\r
+\r
+       private Map<String, TAttributetag> _tags;\r
+\r
+       public Map<String, TAttributetag> getTags() {\r
+               return _tags;\r
+       }\r
+\r
+       public void setTags(Map<String, TAttributetag> tags) {\r
+               _tags = tags;\r
+       }\r
+\r
 }\r
index a7649ff..3541815 100644 (file)
@@ -9,6 +9,7 @@ import java.util.regex.Pattern;
 \r
 import jp.sourceforge.ea2ddl.common.config.Config;\r
 import jp.sourceforge.ea2ddl.dao.exentity.TAttribute;\r
+import jp.sourceforge.ea2ddl.dao.exentity.TAttributetag;\r
 \r
 /**\r
  * @author taktos\r
@@ -24,7 +25,7 @@ public class ColumnModel implements Serializable {
        private Integer _precision;\r
        private Integer _scale;\r
        private boolean nullable;\r
-       private boolean ordered;\r
+       private boolean autoIncrement;\r
 \r
        public static ColumnModel create(TAttribute columnDef, Config dictionary) {\r
                ColumnModel column = new ColumnModel();\r
@@ -33,7 +34,7 @@ public class ColumnModel implements Serializable {
                column.setType(columnDef, dictionary);\r
                column.setNullable(Integer.valueOf(0).equals(\r
                                columnDef.getAllowduplicates()));\r
-               column.setOrdered(Integer.valueOf(1).equals(columnDef.getIsordered()));\r
+               column.setAutoIncrement(columnDef);\r
                column.setNote(columnDef.getNotes());\r
                return column;\r
        }\r
@@ -49,21 +50,21 @@ public class ColumnModel implements Serializable {
                                setType(m.group(1));\r
                                if (m.group(3) != null) {\r
                                        Integer len = Integer.valueOf(m.group(3));\r
-                                       setScale(len);\r
+                                       setPrecision(len);\r
                                }\r
                                if (m.group(5) != null) {\r
-                                       setPrecision(Integer.valueOf(m.group(5)));\r
+                                       setScale(Integer.valueOf(m.group(5)));\r
                                }\r
                        }\r
                        return;\r
                }\r
                setType(columnDef.getType());\r
                if (columnDef.getLength() != null) {\r
-                       setScale(columnDef.getLength());\r
-               } else if (columnDef.getScale() != null) {\r
-                       setScale(columnDef.getScale());\r
+                       setPrecision(columnDef.getLength());\r
+               } else if (columnDef.getPrecision() != null) {\r
+                       setPrecision(columnDef.getScale());\r
                }\r
-               setPrecision(columnDef.getPrecision());\r
+               setScale(columnDef.getScale());\r
        }\r
 \r
        public boolean isNullable() {\r
@@ -74,12 +75,21 @@ public class ColumnModel implements Serializable {
                this.nullable = nullable;\r
        }\r
 \r
-       public boolean isOrdered() {\r
-               return ordered;\r
+       public boolean isAutoIncrement() {\r
+               return autoIncrement;\r
        }\r
 \r
-       public void setOrdered(boolean ordered) {\r
-               this.ordered = ordered;\r
+       public void setAutoIncrement(boolean autoIncrement) {\r
+               this.autoIncrement = autoIncrement;\r
+       }\r
+\r
+       public void setAutoIncrement(TAttribute columnDef) {\r
+               TAttributetag tag = columnDef.getTags().get("AutoNum");\r
+               if (tag != null && "True".equals(tag.getValue())) {\r
+                       this.autoIncrement = true;\r
+               } else {\r
+                       this.autoIncrement = false;\r
+               }\r
        }\r
 \r
        private String defaultValue;\r
@@ -143,17 +153,17 @@ public class ColumnModel implements Serializable {
        public String getDefinition() {\r
                StringBuilder b = new StringBuilder();\r
                b.append(_type);\r
-               if (_scale != null) {\r
-                       b.append("(").append(_scale);\r
-                       if (_precision != null) {\r
-                               b.append(",").append(_precision);\r
+               if (_precision != null) {\r
+                       b.append("(").append(_precision);\r
+                       if (_scale != null) {\r
+                               b.append(",").append(_scale);\r
                        }\r
                        b.append(")");\r
                }\r
                if (!isNullable()) {\r
                        b.append(" NOT NULL");\r
                }\r
-               if (isOrdered()) {\r
+               if (isAutoIncrement()) {\r
                        b.append(" AUTO_INCREMENT");\r
                }\r
                return b.toString();\r