import jp.sourceforge.ea2ddl.dao.exbhv.TAttributeBhv;\r
import jp.sourceforge.ea2ddl.dao.exbhv.TConnectorBhv;\r
import jp.sourceforge.ea2ddl.dao.exbhv.TObjectBhv;\r
+import jp.sourceforge.ea2ddl.dao.exbhv.TObjectconstraintBhv;\r
import jp.sourceforge.ea2ddl.dao.exbhv.TObjectpropertiesBhv;\r
import jp.sourceforge.ea2ddl.dao.exbhv.TOperationBhv;\r
import jp.sourceforge.ea2ddl.dao.exbhv.TOperationparamsBhv;\r
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.ConfigKey;\r
+import jp.sourceforge.ea2ddl.ddl.Constants;\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
+import jp.sourceforge.ea2ddl.ddl.model.IndexModel;\r
import jp.sourceforge.ea2ddl.ddl.model.PrimaryKeyModel;\r
import jp.sourceforge.ea2ddl.ddl.model.TableModel;\r
import jp.sourceforge.ea2ddl.ddl.model.UniqueModel;\r
private TPackageBhv _tPackageBhv;\r
private TObjectBhv _tObjectBhv;\r
private TObjectpropertiesBhv _tObjectpropertiesBhv;\r
+ private TObjectconstraintBhv _tObjectconstraintBhv;\r
private TAttributeBhv _tAttributeBhv;\r
private TConnectorBhv _tConnectorBhv;\r
private TOperationBhv _tOperationBhv;\r
}\r
\r
@Binding\r
+ public void setTObjectconstraintBhv(TObjectconstraintBhv objectconstraintBhv) {\r
+ _tObjectconstraintBhv = objectconstraintBhv;\r
+ }\r
+\r
+ @Binding\r
public void setTAttributeBhv(TAttributeBhv attributeBhv) {\r
_tAttributeBhv = attributeBhv;\r
}\r
*/\r
public DatabaseModel create() {\r
final DatabaseModel dbModel = new DatabaseModel();\r
- final TPackage pkg = getPackage(_config.getProperty("er.package.tree"));\r
- final List<TObject> objectList = _tObjectBhv.selectListByStereotype(pkg, "table");\r
+ final TPackage pkg = getPackage();\r
+ final List<TObject> objectList = _tObjectBhv.selectListByStereotype(pkg, Constants.STEREOTYPE_TABLE);\r
_log.debug(objectList.size());\r
\r
for (TObject object : objectList) {\r
return dbModel;\r
}\r
\r
- protected TPackage getPackage(String packageTree) {\r
- return _tPackageBhv.selectPackage(packageTree);\r
+ protected TPackage getPackage() {\r
+ return _tPackageBhv.selectPackage(_config.getProperty(ConfigKey.ER_PACKAGE_TREE));\r
}\r
\r
protected TableModel generateTableModel(TObject tobject) {\r
table.setName(tobject.getName());\r
table.setAlias(tobject.getAlias());\r
table.setNote(tobject.getNote());\r
- if (_config.getBoolean("use.schema")) {\r
- table.setSchema(_tObjectpropertiesBhv.getValue(tobject, "OWNER"));\r
+ if (_config.getBoolean(_config.getProperty(ConfigKey.USE_SCHEMA))) {\r
+ table.setSchema(_tObjectpropertiesBhv.getValue(tobject, Constants.OBJECT_PROPERTIES_OWNER));\r
}\r
+ table.setSuppressCommonColumn(_tObjectconstraintBhv.hasConstraint(tobject, Constants.SUPPRESS_COMMON_COLUMN));\r
generateColumnModel(table, tobject);\r
generatePKModel(table, tobject);\r
generateFKModel(table, tobject);\r
generateUniqueModel(table, tobject);\r
+ generateIndexModel(table, tobject);\r
\r
return table;\r
}\r
}\r
\r
protected void generatePKModel(TableModel table, TObject tobject) {\r
- final ListResultBean<TOperation> pkList = _tOperationBhv.selectOperation(tobject, "PK");\r
+ final ListResultBean<TOperation> pkList = _tOperationBhv.selectOperation(tobject,\r
+ Constants.STEREOTYPE_PRIMARY_KEY);\r
if (pkList.isEmpty()) {\r
return;\r
}\r
}\r
\r
protected void generateFKModel(TableModel table, TObject tobject) {\r
- final ListResultBean<TOperation> fkList = _tOperationBhv.selectOperation(tobject, "FK");\r
+ final ListResultBean<TOperation> fkList = _tOperationBhv.selectOperation(tobject,\r
+ Constants.STEREOTYPE_FOREIGN_KEY);\r
for (TOperation opeFK : fkList) {\r
final ForeignKeyModel fkModel = new ForeignKeyModel();\r
fkModel.setName(opeFK.getName());\r
protected void generateUniqueModel(TableModel table, TObject tobject) {\r
final TOperationCB cb = new TOperationCB();\r
cb.query().setObjectId_Equal(tobject.getObjectId());\r
- cb.query().setStereotype_Equal("unique");\r
+ cb.query().setStereotype_Equal(Constants.STEREOTYPE_UNIQUE);\r
final ListResultBean<TOperation> uniqueList = _tOperationBhv.selectList(cb);\r
for (TOperation unique : uniqueList) {\r
final UniqueModel uniqueModel = new UniqueModel();\r
table.addUnique(uniqueModel);\r
}\r
}\r
+\r
+ protected void generateIndexModel(TableModel table, TObject tobject) {\r
+ final ListResultBean<TOperation> indexList = _tOperationBhv.selectOperation(tobject, "index");\r
+ for (TOperation index : indexList) {\r
+ final IndexModel indexModel = new IndexModel();\r
+ indexModel.setName(index.getName());\r
+ final ListResultBean<TOperationparams> params = _tOperationparamsBhv.selectOperationParams(index);\r
+ for (TOperationparams param : params) {\r
+ indexModel.addColumn(param.getName());\r
+ }\r
+ table.addIndex(indexModel);\r
+ }\r
+ }\r
+\r
}\r