org.eclipse.emf.codegen.ecore.rose2ecore
Class EcoreBuilder

java.lang.Object
  extended byorg.eclipse.emf.codegen.ecore.rose2ecore.EcoreBuilder
All Implemented Interfaces:
RoseVisitor

public class EcoreBuilder
extends Object
implements RoseVisitor

Traverses the Rose file and create eCore object in memory.


Field Summary
protected static Pattern ANNOTATION_DETAIL_PATTERN
           
protected static Pattern ANNOTATION_PATTERN
           
protected  Set bounded
           
protected static Comparator eClassComparator
           
protected  EcoreFactory ecoreFactory
           
protected  EcorePackage ecorePackage
           
protected  Map eEnums
           
protected  Comparator eStructuralFeatureComparator
           
protected  List eStructuralFeatures
           
protected  Map eStructuralFeatureToXMLNamespaceMap
           
protected  Map idToParentMap
           
protected  EReference ref1
           
protected  EReference ref2
           
protected  RoseNode role1
           
protected  RoseNode role2
           
protected  RoseUtil roseUtil
           
 
Constructor Summary
EcoreBuilder(RoseUtil roseUtil)
           
 
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  EDataType getBasicType(String value)
           
protected  EList getExtentFromTableObject(RoseNode roseNode)
           
protected  String getQualifiedTypeName(ETypedElement typedElement, String type)
           
protected static char parseChar(String c)
           
protected static String parseString(String s)
           
protected  void populateEEnumFromDocumentation(EEnum enum, 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)
           
 void setETypeClassifier()
           
 void setIDs(EObject parent, EObject child)
           
protected  void setResultType(RoseNode roseNode, EOperation eOperation)
           
 void setSuper()
           
protected  String upperCaseName(String name)
           
 void validate(EObject object)
           
protected  String validName(String name)
           
 void visitList(RoseNode roseNode)
           
 void visitObject(RoseNode roseNode)
           
protected  void warning(String message)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

roseUtil

protected RoseUtil roseUtil

ecorePackage

protected EcorePackage ecorePackage

ecoreFactory

protected EcoreFactory ecoreFactory

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
Constructor Detail

EcoreBuilder

public EcoreBuilder(RoseUtil roseUtil)
Method Detail

visitList

public void visitList(RoseNode roseNode)
Specified by:
visitList in interface RoseVisitor

visitObject

public void visitObject(RoseNode roseNode)
Specified by:
visitObject in interface RoseVisitor

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 enum,
                                              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)

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()

setIDs

public void setIDs(EObject parent,
                   EObject child)

validate

public void validate(EObject object)

setEReferences

public void setEReferences()

setETypeClassifier

public void setETypeClassifier()

getBasicType

protected EDataType 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)

parseChar

protected static char parseChar(String c)

parseString

protected static String parseString(String s)

getQualifiedTypeName

protected String getQualifiedTypeName(ETypedElement typedElement,
                                      String type)

Copyright 2001-2004 IBM Corporation and others.
All Rights Reserved.