org.eclipse.mtl.engine.environment
Class MTLEnvironment

java.lang.Object
  extended by org.eclipse.ocl.lpg.AbstractBasicEnvironment
      extended by org.eclipse.ocl.AbstractEnvironment<org.eclipse.emf.ecore.EPackage,org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EOperation,org.eclipse.emf.ecore.EStructuralFeature,org.eclipse.emf.ecore.EEnumLiteral,org.eclipse.emf.ecore.EParameter,org.eclipse.emf.ecore.EObject,org.eclipse.ocl.ecore.CallOperationAction,org.eclipse.ocl.ecore.SendSignalAction,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject>
          extended by org.eclipse.ocl.ecore.EcoreEnvironment
              extended by org.eclipse.mtl.engine.environment.MTLEnvironment
All Implemented Interfaces:
org.eclipse.ocl.Environment<org.eclipse.emf.ecore.EPackage,org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EOperation,org.eclipse.emf.ecore.EStructuralFeature,org.eclipse.emf.ecore.EEnumLiteral,org.eclipse.emf.ecore.EParameter,org.eclipse.emf.ecore.EObject,org.eclipse.ocl.ecore.CallOperationAction,org.eclipse.ocl.ecore.SendSignalAction,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject>, org.eclipse.ocl.Environment.Internal<org.eclipse.emf.ecore.EPackage,org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EOperation,org.eclipse.emf.ecore.EStructuralFeature,org.eclipse.emf.ecore.EEnumLiteral,org.eclipse.emf.ecore.EParameter,org.eclipse.emf.ecore.EObject,org.eclipse.ocl.ecore.CallOperationAction,org.eclipse.ocl.ecore.SendSignalAction,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject>, org.eclipse.ocl.Environment.Lookup<org.eclipse.emf.ecore.EPackage,org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EOperation,org.eclipse.emf.ecore.EStructuralFeature>, org.eclipse.ocl.lpg.BasicEnvironment, org.eclipse.ocl.options.Customizable, org.eclipse.ocl.util.Adaptable

public class MTLEnvironment
extends org.eclipse.ocl.ecore.EcoreEnvironment

The environment that will be used throughout the evaluation of MTL templates.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.ocl.AbstractEnvironment
org.eclipse.ocl.AbstractEnvironment.VariableEntry
 
Nested classes/interfaces inherited from interface org.eclipse.ocl.Environment
org.eclipse.ocl.Environment.Internal<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>, org.eclipse.ocl.Environment.Lookup<PK,C,O,P>, org.eclipse.ocl.Environment.Registry
 
Field Summary
 
Fields inherited from interface org.eclipse.ocl.Environment
OCL_NAMESPACE_URI, RESULT_VARIABLE_NAME, SELF_VARIABLE_NAME
 
Constructor Summary
protected MTLEnvironment(org.eclipse.emf.ecore.EPackage.Registry reg)
          Delegates instantiation to the super-constructor.
 
Method Summary
 void restoreBrokenEnvironmentPackages(org.eclipse.emf.ecore.resource.Resource resource)
          Restores the broken packages' links toward the environment.
protected  void setFactory(org.eclipse.ocl.EnvironmentFactory<org.eclipse.emf.ecore.EPackage,org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EOperation,org.eclipse.emf.ecore.EStructuralFeature,org.eclipse.emf.ecore.EEnumLiteral,org.eclipse.emf.ecore.EParameter,org.eclipse.emf.ecore.EObject,org.eclipse.ocl.ecore.CallOperationAction,org.eclipse.ocl.ecore.SendSignalAction,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> factory)
          
 
Methods inherited from class org.eclipse.ocl.ecore.EcoreEnvironment
collectStates, createTypeResolver, createTypeResolver, defineAttribute, defineOperation, findPackage, findPackage, getDefinition, getFactory, getOCLFactory, getOCLStandardLibrary, getStates, getTypeResolver, getUMLReflection, isInPostcondition, lookupClassifier, lookupPackage, setParent, undefine
 
Methods inherited from class org.eclipse.ocl.AbstractEnvironment
addedVariable, addElement, addHelperOperation, addHelperProperty, addOperation, addProperty, deleteElement, dispose, findNonNavigableAssociationEnds, findUnnamedAssociationEnds, getAdditionalAttributes, getAdditionalOperations, getBodyCondition, getContextClassifier, getContextOperation, getContextPackage, getContextProperty, getDeriveConstraint, getInitConstraint, getInternalParent, getResource, getSelfVariable, getVariables, initialLower, isEmpty, lookup, lookupAssociationClassReference, lookupImplicitSourceForAssociationClass, lookupImplicitSourceForOperation, lookupImplicitSourceForProperty, lookupImplicitSourceForSignal, lookupImplicitSourceForState, lookupLocal, lookupOperation, lookupProperty, lookupSignal, lookupState, notOK, removedVariable, setBodyCondition, setContextOperation, setContextPackage, setContextProperty, setDeriveConstraint, setInitConstraint, setInternalParent, setParent, setSelfVariable, tryLookupAssociationClassReference, tryLookupClassifier, tryLookupOperation, tryLookupPackage, tryLookupProperty, tryLookupSignal
 
Methods inherited from class org.eclipse.ocl.lpg.AbstractBasicEnvironment
analyzerError, analyzerError, analyzerError, analyzerWarning, basicGetOptions, clearOptions, createDefaultProblemHandler, getAdapter, getASTMapping, getASTNodeToCSTNodeMap, getFormatter, getOptions, getParser, getProblemHandler, getValue, initASTMapping, isEnabled, lexerError, parserError, problem, putOptions, removeOption, removeOptions, setASTNodeToCSTNodeMap, setOption, setParent, setParser, setProblemHandler, utilityError, validatorError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.lpg.BasicEnvironment
analyzerError, analyzerError, analyzerError, analyzerWarning, getASTMapping, getFormatter, getParser, getProblemHandler, initASTMapping, lexerError, parserError, problem, setParser, setProblemHandler, utilityError, validatorError
 
Methods inherited from interface org.eclipse.ocl.util.Adaptable
getAdapter
 
Methods inherited from interface org.eclipse.ocl.options.Customizable
clearOptions, getOptions, getValue, isEnabled, putOptions, removeOption, removeOptions, setOption
 

Constructor Detail

MTLEnvironment

protected MTLEnvironment(org.eclipse.emf.ecore.EPackage.Registry reg)
Delegates instantiation to the super-constructor.

Parameters:
reg - The package registry.
Method Detail

restoreBrokenEnvironmentPackages

public void restoreBrokenEnvironmentPackages(org.eclipse.emf.ecore.resource.Resource resource)
Restores the broken packages' links toward the environment.

When the parsed template is saved as a model, factories instance aren't persisted with it. This step is needed in order for the evaluation to be able to find these factories back.

Parameters:
resource - Resource of the emtl file on which packages are to be fixed.

setFactory

protected void setFactory(org.eclipse.ocl.EnvironmentFactory<org.eclipse.emf.ecore.EPackage,org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EOperation,org.eclipse.emf.ecore.EStructuralFeature,org.eclipse.emf.ecore.EEnumLiteral,org.eclipse.emf.ecore.EParameter,org.eclipse.emf.ecore.EObject,org.eclipse.ocl.ecore.CallOperationAction,org.eclipse.ocl.ecore.SendSignalAction,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> factory)

Overrides:
setFactory in class org.eclipse.ocl.ecore.EcoreEnvironment
See Also:
EcoreEnvironment.setFactory(org.eclipse.ocl.EnvironmentFactory)

Copyright 2008 Obeo
All Rights Reserved.