Changeset 8006 for mauRepo/xmi2sqlalchemy
- Timestamp:
- 06/12/11 16:32:27 (9 years ago)
- Location:
- mauRepo/xmi2sqlalchemy/trunk/src/main
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
mauRepo/xmi2sqlalchemy/trunk/src/main/java/ndg/services/newmoon/collect/CollectClassesClosure.java
r8005 r8006 40 40 41 41 import ndg.services.newmoon.NewmoonException; 42 import ndg.services.newmoon.NmParser;43 42 import ndg.services.newmoon.UMLElementsArchive; 44 43 import ndg.services.newmoon.velocity.python.GenerateClasses.EmbeddedType; … … 52 51 import ndg.services.newmoon.xmiModel.UMLClassDataType; 53 52 import ndg.services.newmoon.xmiModel.UMLDataType; 54 import ndg.services.newmoon.xmiModel.UMLModel;55 53 import ndg.services.newmoon.xmiModel.UMLStereotype; 56 54 import ndg.services.newmoon.xmiModel.UMLValueTagged; … … 62 60 import org.apache.commons.lang.StringUtils; 63 61 import org.apache.commons.lang.math.NumberUtils; 64 import org.w3c.dom.Node;65 62 66 63 /** … … 175 172 UMLClass item = null; 176 173 while (items.hasNext()) { 177 item = items.next(); 174 item = items.next(); 178 175 CollectionUtils.addIgnoreNull(cm.getParents(), processUMLclass(item)); 179 176 } 180 177 } 181 178 179 180 182 181 private void processStereotype(ClassModel cm) { 183 182 // Set<UMLStereotype> stereotypes = -
mauRepo/xmi2sqlalchemy/trunk/src/main/java/ndg/services/newmoon/velocity/python/GenerateClassesClosure.java
r8004 r8006 124 124 CollectionUtils.addAll(toImport, cm.getAttributeModel().iterator()); 125 125 //not the best solution but ok for now 126 toImport.add(new ASText());126 //toImport.add(new ASText()); 127 127 } 128 128 -
mauRepo/xmi2sqlalchemy/trunk/src/main/java/ndg/services/newmoon/velocity/python/GenerateTables_.java
r8004 r8006 170 170 sqlTablesWriter.append("from sqlalchemy.orm.util import class_mapper\n"); 171 171 sqlTablesWriter.append("from sqlalchemy.schema import ForeignKeyConstraint\n\n"); 172 sqlTablesWriter.append("from ascore.astext import ASText\n\n"); 172 173 173 174 sqlTablesWriter.flush(); -
mauRepo/xmi2sqlalchemy/trunk/src/main/java/ndg/services/newmoon/velocity/python/InnerGenerateTablesClosure.java
r8005 r8006 220 220 return (classModel.isCodeList() 221 221 || classModel.isEnumeration() 222 || checkIfIsPrimitiveAttribute(classModel) 223 || classModel.getStereotype().equals(STEREOTYPE.Metaclass)); 222 || checkIfIsPrimitiveAttribute(classModel)); 224 223 } 225 224 -
mauRepo/xmi2sqlalchemy/trunk/src/main/resources/global_library.vm
r8004 r8006 1 #macro( substitute Type $typeName)1 #macro( substituteClassType $typeName) 2 2 #if($typeName.equals('CharacterString')) 3 ASText#elseif($typeName.equals('Character')) 4 ASText#elseif($typeName.equals('Integer')) 3 str#elseif($typeName.equals('Character')) 4 str#else 5 ${typeName} 6 #end 7 #end 8 9 #macro( substituteDBType $typeName) 10 #if($typeName.equals('CharacterString')) 11 TEXT#elseif($typeName.equals('Character')) 12 TEXT#elseif($typeName.equals('Integer')) 5 13 Integer#elseif($typeName.equals('Boolean')) 6 14 BOOLEAN#elseif($typeName.equals('Real')) -
mauRepo/xmi2sqlalchemy/trunk/src/main/resources/velocity/python/notSortableMapping_1.vm
r7996 r8006 1 1 ## notSortableMapping_1.vm 2 2 3 mapper($tableModel.associatedClass.name, #tableName($tableModel) #inheritedClasses($tableModel))3 mapper($tableModel.associatedClass.name, #tableName($tableModel)) 4 4 -
mauRepo/xmi2sqlalchemy/trunk/src/main/resources/velocity/python/pythonClass.vm
r8004 r8006 11 11 #macro( superclass $superclasses, $stereotype) 12 12 #if($superclasses.size() == 0 && !$stereotype) 13 $object#end 14 #if($stereotype) 15 ${stereotype.name}#end 16 #if($stereotype && $superclasses.size() > 0),#end 17 #if($superclasses.size() > 0) 13 $object#elseif($stereotype && $superclasses.size() == 0) 14 ${stereotype.name}#elseif($superclasses.size() > 0) 18 15 #foreach( $classModel in $superclasses) 19 16 ${classModel.associatedClass.name}#if($foreach.hasNext),#end … … 40 37 #macro (unionDictionary $attributeModel) 41 38 #foreach($item in $attributeModel) 42 '${item.name}':#substitute Type(${item.associatedType.associatedClass.name})#if($foreach.hasNext),#end39 '${item.name}':#substituteClassType(${item.associatedType.associatedClass.name})#if($foreach.hasNext),#end 43 40 #end 44 41 #end … … 96 93 #end 97 94 95 #macro( addAggregate $classModel) 96 #foreach($parent in $classModel.parents) 97 #if (!($parent.isEnumeration() || $parent.isCodeList() || $parent.isUnion())) 98 ${tab}self._${parent.associatedClass.name} 99 #end 100 #end 101 #end 102 98 103 99 104 #macro( importing $toImport) … … 133 138 ${tab}''' 134 139 ${tab}def __init__(self): 135 ${tab}${tab}super(${classModel.associatedClass.name}, self).__init__() 140 ${tab}#addAggregate($classModel) 141 ${tab}super(${classModel.associatedClass.name}, self).__init__() 136 142 #end 137 143 #if (!($classModel.isEnumeration() || $classModel.isCodeList() || $classModel.isUnion())) -
mauRepo/xmi2sqlalchemy/trunk/src/main/resources/velocity/python/sqlAlchemyTables.vm
r8004 r8006 6 6 7 7 #macro( attributeType $attribute) 8 #if(($attribute.associatedType.isCodeList() || $attribute.associatedType.isEnumeration())) 8 #if($attribute.associatedType.associatedClass.name.equalsIgnoreCase('boolean') 9 && ($attribute.associatedType.isCodeList() || $attribute.associatedType.isEnumeration())) 9 10 ${attribute.associatedType.associatedClass.name}.db_type()#elseif($attribute.hasMultiplicity()) 10 ARRAY(#substitute Type(${attribute.associatedType.associatedClass.name}))#else11 #substitute Type(${attribute.associatedType.associatedClass.name})(#if($attribute.lenght > 0)${attribute.lenght}#end)#end11 ARRAY(#substituteDBType(${attribute.associatedType.associatedClass.name}))#else 12 #substituteDBType(${attribute.associatedType.associatedClass.name})#end 12 13 #end 13 14
Note: See TracChangeset
for help on using the changeset viewer.