org.eclipse.emf.importer.rose.builder
Class RoseEcoreBuilder
java.lang.Object
org.eclipse.emf.importer.rose.builder.RoseEcoreBuilder
- All Implemented Interfaces:
- RoseVisitor
- public class RoseEcoreBuilder
- extends Object
- implements RoseVisitor
Traverses the Rose file and create eCore object in memory.
Method Summary |
protected void |
build(RoseNode roseNode,
Object parent,
ENamedElement eNamedElement)
|
void |
createEPackageForRootClasses(EList extent,
RoseNode roseNode,
String packageName)
|
protected void |
error(String message)
|
protected EClassifier |
getBasicType(String value)
|
protected EList |
getExtentFromTableObject(RoseNode roseNode)
|
protected String |
getQualifiedTypeName(ETypedElement typedElement,
String type)
|
protected void |
populateEEnumFromDocumentation(EEnum eEnum,
String documentation)
|
protected void |
setEAttributeProperties(RoseNode roseNode,
EAttribute eAttribute)
|
protected void |
setEClassProperties(RoseNode roseNode,
EClass eClass)
|
protected void |
setEDataTypeProperties(RoseNode roseNode,
EDataType eDataType)
|
protected boolean |
setEEnumLiteralProperties(RoseNode roseNode,
EEnumLiteral eEnumLiteral)
|
protected void |
setEEnumProperties(RoseNode roseNode,
EEnum eEnum)
|
void |
setEEnums()
|
protected void |
setEModelElementProperties(RoseNode roseNode,
EModelElement eModelElement)
|
protected void |
setEOperationProperties(RoseNode roseNode,
EOperation eOperation)
|
protected void |
setEPackageProperties(RoseNode roseNode,
EPackage ePackage,
String tentativeName)
|
protected void |
setEParameterProperties(RoseNode roseNode,
EParameter eParameter)
|
protected void |
setEReferenceDefaultMultiplicity(EReference eReference)
|
protected void |
setEReferenceIsContainment(EReference ref,
RoseNode role1,
RoseNode role2)
|
protected void |
setEReferenceProperties(RoseNode roseNode,
EReference eReference)
|
void |
setEReferences()
|
protected void |
setEStructuralFeatureProperties(RoseNode roseNode,
EStructuralFeature eStructuralFeature)
|
protected void |
setEStructuralFeatureVisibility(RoseNode roseNode,
EStructuralFeature eStructuralFeature)
Maps the single, user-friendly Rose setting into accessor method suppression, via EcoreUtil. |
void |
setETypeClassifier()
|
protected void |
setETypedElementProperties(RoseNode roseNode,
ETypedElement eTypedElement)
|
void |
setIDs(EObject parent,
EObject child)
|
protected void |
setResultType(RoseNode roseNode,
EOperation eOperation)
|
void |
setSuper()
|
protected void |
sortSuper(Map superMap)
|
protected String |
upperCaseName(String name)
|
void |
validate(EObject object)
|
protected Object |
validateEClass(EClass eClass)
|
protected Object |
validateEDataType(EDataType eDataType)
|
protected Object |
validateEEnum(EEnum eEnum)
|
protected String |
validName(String name)
|
protected void |
visitAssociation(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
visitClass(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
visitClassattribute(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
visitClassCategory(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
visitInheritanceRelationship(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
void |
visitList(RoseNode roseNode)
|
void |
visitObject(RoseNode roseNode)
|
protected void |
visitObject(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectType,
String objectName,
Object parent)
|
protected void |
visitOperation(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
visitParameter(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
visitRole(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
|
protected void |
warning(String message)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
noQualify
public boolean noQualify
unsettablePrimitive
public boolean unsettablePrimitive
roseUtil
protected RoseUtil roseUtil
bounded
protected Set bounded
eStructuralFeatureToXMLNamespaceMap
protected Map eStructuralFeatureToXMLNamespaceMap
eStructuralFeatures
protected List eStructuralFeatures
eEnums
protected Map eEnums
idToParentMap
protected Map idToParentMap
ref1
protected EReference ref1
ref2
protected EReference ref2
role1
protected RoseNode role1
role2
protected RoseNode role2
ANNOTATION_PATTERN
protected static final Pattern ANNOTATION_PATTERN
ANNOTATION_DETAIL_PATTERN
protected static final Pattern ANNOTATION_DETAIL_PATTERN
eClassComparator
protected static Comparator eClassComparator
eStructuralFeatureComparator
protected Comparator eStructuralFeatureComparator
RoseEcoreBuilder
public RoseEcoreBuilder(RoseUtil roseUtil)
visitList
public void visitList(RoseNode roseNode)
- Specified by:
visitList
in interface RoseVisitor
visitObject
public void visitObject(RoseNode roseNode)
- Specified by:
visitObject
in interface RoseVisitor
visitObject
protected void visitObject(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectType,
String objectName,
Object parent)
visitClassCategory
protected void visitClassCategory(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitClass
protected void visitClass(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitOperation
protected void visitOperation(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitParameter
protected void visitParameter(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitInheritanceRelationship
protected void visitInheritanceRelationship(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitClassattribute
protected void visitClassattribute(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitAssociation
protected void visitAssociation(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
visitRole
protected void visitRole(RoseNode roseNode,
String roseNodeValue,
String objectKey,
String objectName,
Object parent)
getExtentFromTableObject
protected EList getExtentFromTableObject(RoseNode roseNode)
setEReferenceIsContainment
protected void setEReferenceIsContainment(EReference ref,
RoseNode role1,
RoseNode role2)
setResultType
protected void setResultType(RoseNode roseNode,
EOperation eOperation)
setEModelElementProperties
protected void setEModelElementProperties(RoseNode roseNode,
EModelElement eModelElement)
setEPackageProperties
protected void setEPackageProperties(RoseNode roseNode,
EPackage ePackage,
String tentativeName)
setEClassProperties
protected void setEClassProperties(RoseNode roseNode,
EClass eClass)
setEDataTypeProperties
protected void setEDataTypeProperties(RoseNode roseNode,
EDataType eDataType)
setEEnumProperties
protected void setEEnumProperties(RoseNode roseNode,
EEnum eEnum)
populateEEnumFromDocumentation
protected void populateEEnumFromDocumentation(EEnum eEnum,
String documentation)
setEOperationProperties
protected void setEOperationProperties(RoseNode roseNode,
EOperation eOperation)
setEAttributeProperties
protected void setEAttributeProperties(RoseNode roseNode,
EAttribute eAttribute)
setEReferenceProperties
protected void setEReferenceProperties(RoseNode roseNode,
EReference eReference)
setEStructuralFeatureProperties
protected void setEStructuralFeatureProperties(RoseNode roseNode,
EStructuralFeature eStructuralFeature)
setETypedElementProperties
protected void setETypedElementProperties(RoseNode roseNode,
ETypedElement eTypedElement)
setEStructuralFeatureVisibility
protected void setEStructuralFeatureVisibility(RoseNode roseNode,
EStructuralFeature eStructuralFeature)
- Maps the single, user-friendly Rose setting into accessor method suppression, via EcoreUtil.
setEEnumLiteralProperties
protected boolean setEEnumLiteralProperties(RoseNode roseNode,
EEnumLiteral eEnumLiteral)
setEParameterProperties
protected void setEParameterProperties(RoseNode roseNode,
EParameter eParameter)
setEReferenceDefaultMultiplicity
protected void setEReferenceDefaultMultiplicity(EReference eReference)
setEEnums
public void setEEnums()
setSuper
public void setSuper()
sortSuper
protected void sortSuper(Map superMap)
setIDs
public void setIDs(EObject parent,
EObject child)
validate
public void validate(EObject object)
validateEDataType
protected Object validateEDataType(EDataType eDataType)
validateEEnum
protected Object validateEEnum(EEnum eEnum)
validateEClass
protected Object validateEClass(EClass eClass)
setEReferences
public void setEReferences()
setETypeClassifier
public void setETypeClassifier()
getBasicType
protected EClassifier getBasicType(String value)
createEPackageForRootClasses
public void createEPackageForRootClasses(EList extent,
RoseNode roseNode,
String packageName)
build
protected void build(RoseNode roseNode,
Object parent,
ENamedElement eNamedElement)
upperCaseName
protected String upperCaseName(String name)
validName
protected String validName(String name)
warning
protected void warning(String message)
error
protected void error(String message)
getQualifiedTypeName
protected String getQualifiedTypeName(ETypedElement typedElement,
String type)