org.eclipse.ocl.examples.codegen.oclinecore
Class OCLinEcoreCG2JavaVisitor

java.lang.Object
  extended by org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor<R,C>
      extended by org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractExtendingCGModelVisitor<java.lang.Boolean,JavaCodeGenerator>
          extended by org.eclipse.ocl.examples.codegen.java.CG2JavaVisitor
              extended by org.eclipse.ocl.examples.codegen.oclinecore.OCLinEcoreCG2JavaVisitor
All Implemented Interfaces:
CGModelVisitor<java.lang.Boolean>

public class OCLinEcoreCG2JavaVisitor
extends CG2JavaVisitor

An OCLinEcoreCG2JavaVisitor supports generation of the OCL embedded in an Ecore model into the Java bodies of the code producxed by GenModel.


Field Summary
protected  CGPackage cgPackage
           
protected  ExpressionInOCL expInOcl
           
protected  Feature feature
           
protected  org.eclipse.emf.codegen.ecore.genmodel.GenPackage genPackage
           
 
Fields inherited from class org.eclipse.ocl.examples.codegen.java.CG2JavaVisitor
analyzer, genModelHelper, globalContext, id2JavaInterfaceVisitor, js, localContext
 
Fields inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor
context
 
Constructor Summary
OCLinEcoreCG2JavaVisitor(JavaCodeGenerator codeGenerator, org.eclipse.emf.codegen.ecore.genmodel.GenPackage genPackage, CGPackage cgPackage)
           
 
Method Summary
protected  void appendGlobalPrefix()
           
 java.util.Map<java.lang.String,java.lang.String> generateBodies()
           
protected  java.lang.String generateBody(CGValuedElement cgBody, java.lang.String returnClassName)
           
 java.lang.String generateConstants(java.util.List<CGValuedElement> sortedGlobals)
           
protected  java.lang.String generateValidatorBody(CGValuedElement cgBody, Constraint asConstraint, Type asType)
           
protected  java.lang.String getFragmentURI(Element element)
           
protected  OCLinEcoreGlobalContext getGlobalContext()
           
protected  OCLinEcoreLocalContext getLocalContext()
           
protected  java.lang.String getRuleName(Constraint constraint)
           
 java.lang.Boolean visitCGClass(CGClass cgClass)
           
 java.lang.Boolean visitCGConstantExp(CGConstantExp cgConstantExp)
           
 java.lang.Boolean visitCGOperation(CGOperation cgOperation)
           
 java.lang.Boolean visitCGPackage(CGPackage cgPackage)
           
 
Methods inherited from class org.eclipse.ocl.examples.codegen.java.CG2JavaVisitor
addImport, appendLoopCall, appendReturn, createId2JavaClassVisitor, createId2JavaExpressionVisitor, generateGlobals, getAllImports, getAnalyzer, getCodeGenerator, getExpression, getGenModelHelper, getLeastDerivedClass, getMetaModelManager, getSymbolName, getValueName, isBoxedElement, isBoxedType, isBoxedType2, isEnumerationLiteral, toString, visitCGAssertNonNullExp, visitCGBoolean, visitCGBoxExp, visitCGBuiltInIterationCallExp, visitCGCastExp, visitCGCatchExp, visitCGCollectionExp, visitCGCollectionPart, visitCGConstraint, visitCGConstructorExp, visitCGConstructorPart, visitCGEcoreDataTypeConstructorExp, visitCGEcoreOperationCallExp, visitCGEcorePropertyCallExp, visitCGElementId, visitCGExecutorCompositionProperty, visitCGExecutorConstructorPart, visitCGExecutorNavigationProperty, visitCGExecutorOperation, visitCGExecutorOperationCallExp, visitCGExecutorOppositeProperty, visitCGExecutorOppositePropertyCallExp, visitCGExecutorPropertyCallExp, visitCGExecutorType, visitCGGuardExp, visitCGIfExp, visitCGInteger, visitCGInvalid, visitCGIsEqualExp, visitCGIsInvalidExp, visitCGIsUndefinedExp, visitCGLetExp, visitCGLibraryIterateCallExp, visitCGLibraryIterationCallExp, visitCGLibraryOperationCallExp, visitCGLibraryPropertyCallExp, visitCGNull, visitCGParameter, visitCGProperty, visitCGReal, visitCGString, visitCGText, visitCGTextParameter, visitCGThrowExp, visitCGTupleExp, visitCGTuplePartCallExp, visitCGTypeExp, visitCGTypeId, visitCGUnboxExp, visitCGUnlimited, visitCGVariable, visitCGVariableExp, visiting
 
Methods inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractExtendingCGModelVisitor
visitCGAccumulator, visitCGCallable, visitCGCallExp, visitCGConstant, visitCGEcoreClassConstructorExp, visitCGEcoreOperation, visitCGEcoreOppositePropertyCallExp, visitCGElement, visitCGExecutorProperty, visitCGFinalVariable, visitCGIterationCallExp, visitCGIterator, visitCGLibraryOperation, visitCGLocalVariable, visitCGModel, visitCGNamedElement, visitCGNavigationCallExp, visitCGNumber, visitCGOperationCallExp, visitCGOppositePropertyCallExp, visitCGPropertyCallExp, visitCGSettableVariable, visitCGTuplePart, visitCGTypedElement, visitCGValuedElement
 
Methods inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor
getAdapter, safeVisit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.codegen.cgmodel.util.CGModelVisitor
getAdapter
 

Field Detail

genPackage

@NonNull
protected final org.eclipse.emf.codegen.ecore.genmodel.GenPackage genPackage

cgPackage

@NonNull
protected final CGPackage cgPackage

expInOcl

protected ExpressionInOCL expInOcl

feature

protected Feature feature
Constructor Detail

OCLinEcoreCG2JavaVisitor

public OCLinEcoreCG2JavaVisitor(@NonNull
                                JavaCodeGenerator codeGenerator,
                                @NonNull
                                org.eclipse.emf.codegen.ecore.genmodel.GenPackage genPackage,
                                @NonNull
                                CGPackage cgPackage)
Method Detail

appendGlobalPrefix

protected void appendGlobalPrefix()
Overrides:
appendGlobalPrefix in class CG2JavaVisitor

generateBodies

@NonNull
public java.util.Map<java.lang.String,java.lang.String> generateBodies()

generateBody

@NonNull
protected java.lang.String generateBody(@NonNull
                                                CGValuedElement cgBody,
                                                @NonNull
                                                java.lang.String returnClassName)

generateConstants

@NonNull
public java.lang.String generateConstants(java.util.List<CGValuedElement> sortedGlobals)

generateValidatorBody

@NonNull
protected java.lang.String generateValidatorBody(@NonNull
                                                         CGValuedElement cgBody,
                                                         @NonNull
                                                         Constraint asConstraint,
                                                         @NonNull
                                                         Type asType)

getFragmentURI

protected java.lang.String getFragmentURI(@NonNull
                                          Element element)

getGlobalContext

@NonNull
protected OCLinEcoreGlobalContext getGlobalContext()

getLocalContext

@NonNull
protected OCLinEcoreLocalContext getLocalContext()

getRuleName

protected java.lang.String getRuleName(@NonNull
                                       Constraint constraint)

visitCGClass

@NonNull
public java.lang.Boolean visitCGClass(@NonNull
                                              CGClass cgClass)
Specified by:
visitCGClass in interface CGModelVisitor<java.lang.Boolean>
Overrides:
visitCGClass in class AbstractExtendingCGModelVisitor<java.lang.Boolean,JavaCodeGenerator>

visitCGConstantExp

@NonNull
public java.lang.Boolean visitCGConstantExp(@NonNull
                                                    CGConstantExp cgConstantExp)
Specified by:
visitCGConstantExp in interface CGModelVisitor<java.lang.Boolean>
Overrides:
visitCGConstantExp in class CG2JavaVisitor

visitCGOperation

@NonNull
public java.lang.Boolean visitCGOperation(@NonNull
                                                  CGOperation cgOperation)
Specified by:
visitCGOperation in interface CGModelVisitor<java.lang.Boolean>
Overrides:
visitCGOperation in class CG2JavaVisitor

visitCGPackage

@NonNull
public java.lang.Boolean visitCGPackage(@NonNull
                                                CGPackage cgPackage)
Specified by:
visitCGPackage in interface CGModelVisitor<java.lang.Boolean>
Overrides:
visitCGPackage in class CG2JavaVisitor