public class RoseEcoreBuilder extends java.lang.Object implements RoseVisitor
Modifier and Type | Field and Description |
---|---|
protected static java.util.regex.Pattern |
ANNOTATION_DETAIL_PATTERN |
protected static java.util.regex.Pattern |
ANNOTATION_PATTERN |
protected java.util.Set<EAttribute> |
attributesToConvert |
protected java.util.Set<EModelElement> |
bounded |
protected static java.util.Comparator<java.lang.Object> |
eClassComparator |
protected java.util.Map<EEnum,java.lang.String> |
eEnums |
protected EGenericType |
eGenericType1 |
protected EGenericType |
eGenericType2 |
protected java.util.Map<EModelElement,RoseNode> |
eModelElementToRoseNodeMap |
protected java.util.Comparator<EStructuralFeature> |
eStructuralFeatureComparator |
protected java.util.List<EStructuralFeature> |
eStructuralFeatures |
protected java.util.Map<EStructuralFeature,java.lang.String> |
eStructuralFeatureToXMLNamespaceMap |
protected java.util.Map<java.lang.String,java.lang.Object> |
idToParentMap |
boolean |
noQualify |
protected EReference |
ref1 |
protected EReference |
ref2 |
protected RoseNode |
role1 |
protected RoseNode |
role2 |
protected RoseUtil |
roseUtil |
boolean |
unsettablePrimitive |
Constructor and Description |
---|
RoseEcoreBuilder(RoseUtil roseUtil) |
Modifier and Type | Method and Description |
---|---|
protected void |
build(RoseNode roseNode,
java.lang.Object parent,
ENamedElement eNamedElement) |
void |
createEPackageForRootClasses(EList<EObject> extent,
RoseNode roseNode,
java.lang.String packageName) |
protected void |
error(java.lang.String message) |
protected EClassifier |
getBasicType(java.lang.String value) |
protected EList<EObject> |
getExtentFromTableObject(RoseNode roseNode) |
protected java.lang.String |
getQualifiedTypeName(EModelElement eModelElement,
java.lang.String type) |
protected java.lang.String |
getQualifiedTypeName(ETypedElement typedElement,
java.lang.String type) |
protected java.util.List<EGenericType> |
parseTemplateArguments(java.lang.String templateArguments) |
protected java.util.List<ETypeParameter> |
parseTemplateParameters(java.lang.String templateParameters) |
protected void |
populateEEnumFromDocumentation(EEnum eEnum,
java.lang.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,
java.lang.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(java.util.Map<EClass,java.util.List<EGenericType>[]> superMap) |
protected java.lang.String |
upperCaseName(java.lang.String name) |
void |
validate(EObject object) |
protected java.lang.Object |
validateEClass(EClass eClass) |
protected java.lang.Object |
validateEDataType(EDataType eDataType) |
protected java.lang.Object |
validateEEnum(EEnum eEnum) |
protected java.lang.String |
validName(java.lang.String name) |
protected void |
visitAssociation(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitClass(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitClassattribute(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitClassCategory(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitInheritanceRelationship(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
void |
visitList(RoseNode roseNode) |
void |
visitObject(RoseNode roseNode) |
protected void |
visitObject(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectType,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitOperation(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitParameter(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
visitRole(RoseNode roseNode,
java.lang.String roseNodeValue,
java.lang.String objectKey,
java.lang.String objectName,
java.lang.Object parent) |
protected void |
warning(java.lang.String message) |
public boolean noQualify
public boolean unsettablePrimitive
protected RoseUtil roseUtil
protected java.util.Set<EModelElement> bounded
protected java.util.Map<EStructuralFeature,java.lang.String> eStructuralFeatureToXMLNamespaceMap
protected java.util.List<EStructuralFeature> eStructuralFeatures
protected java.util.Map<EEnum,java.lang.String> eEnums
protected java.util.Map<java.lang.String,java.lang.Object> idToParentMap
protected EReference ref1
protected EReference ref2
protected RoseNode role1
protected RoseNode role2
protected EGenericType eGenericType1
protected EGenericType eGenericType2
protected java.util.Set<EAttribute> attributesToConvert
protected java.util.Map<EModelElement,RoseNode> eModelElementToRoseNodeMap
protected static final java.util.regex.Pattern ANNOTATION_PATTERN
protected static final java.util.regex.Pattern ANNOTATION_DETAIL_PATTERN
protected static java.util.Comparator<java.lang.Object> eClassComparator
protected java.util.Comparator<EStructuralFeature> eStructuralFeatureComparator
public RoseEcoreBuilder(RoseUtil roseUtil)
public void visitList(RoseNode roseNode)
visitList
in interface RoseVisitor
public void visitObject(RoseNode roseNode)
visitObject
in interface RoseVisitor
protected void visitObject(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectType, java.lang.String objectName, java.lang.Object parent)
protected void visitClassCategory(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitClass(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitOperation(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitParameter(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitInheritanceRelationship(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitClassattribute(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitAssociation(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void visitRole(RoseNode roseNode, java.lang.String roseNodeValue, java.lang.String objectKey, java.lang.String objectName, java.lang.Object parent)
protected void setEReferenceIsContainment(EReference ref, RoseNode role1, RoseNode role2)
protected void setResultType(RoseNode roseNode, EOperation eOperation)
protected void setEModelElementProperties(RoseNode roseNode, EModelElement eModelElement)
protected void setEPackageProperties(RoseNode roseNode, EPackage ePackage, java.lang.String tentativeName)
protected void setEDataTypeProperties(RoseNode roseNode, EDataType eDataType)
protected void populateEEnumFromDocumentation(EEnum eEnum, java.lang.String documentation)
protected void setEOperationProperties(RoseNode roseNode, EOperation eOperation)
protected void setEAttributeProperties(RoseNode roseNode, EAttribute eAttribute)
protected void setEReferenceProperties(RoseNode roseNode, EReference eReference)
protected void setEStructuralFeatureProperties(RoseNode roseNode, EStructuralFeature eStructuralFeature)
protected void setETypedElementProperties(RoseNode roseNode, ETypedElement eTypedElement)
protected void setEStructuralFeatureVisibility(RoseNode roseNode, EStructuralFeature eStructuralFeature)
protected boolean setEEnumLiteralProperties(RoseNode roseNode, EEnumLiteral eEnumLiteral)
protected void setEParameterProperties(RoseNode roseNode, EParameter eParameter)
protected void setEReferenceDefaultMultiplicity(EReference eReference)
public void setEEnums()
public void setSuper()
protected void sortSuper(java.util.Map<EClass,java.util.List<EGenericType>[]> superMap)
protected java.util.List<ETypeParameter> parseTemplateParameters(java.lang.String templateParameters)
protected java.util.List<EGenericType> parseTemplateArguments(java.lang.String templateArguments)
public void validate(EObject object)
protected java.lang.Object validateEDataType(EDataType eDataType)
protected java.lang.Object validateEEnum(EEnum eEnum)
protected java.lang.Object validateEClass(EClass eClass)
public void setEReferences()
public void setETypeClassifier()
protected EClassifier getBasicType(java.lang.String value)
public void createEPackageForRootClasses(EList<EObject> extent, RoseNode roseNode, java.lang.String packageName)
protected void build(RoseNode roseNode, java.lang.Object parent, ENamedElement eNamedElement)
protected java.lang.String upperCaseName(java.lang.String name)
protected java.lang.String validName(java.lang.String name)
protected void warning(java.lang.String message)
protected void error(java.lang.String message)
protected java.lang.String getQualifiedTypeName(ETypedElement typedElement, java.lang.String type)
protected java.lang.String getQualifiedTypeName(EModelElement eModelElement, java.lang.String type)