Class EMFModelAdapter
- java.lang.Object
-
- org.eclipse.m2m.atl.engine.emfvm.adapter.EMFModelAdapter
-
- All Implemented Interfaces:
IModelAdapter
- Direct Known Subclasses:
UML2ModelAdapter
public class EMFModelAdapter extends java.lang.Object implements IModelAdapter
The model adapter dedicated to EMF.
-
-
Constructor Summary
Constructors Constructor Description EMFModelAdapter()
Creates an EMF model adapter.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
delete(AbstractStackFrame frame, java.lang.Object modelElement)
Deletes an object on the given frame.void
finalizeModel(IModel model)
Finalizes the given model.java.lang.Object
get(AbstractStackFrame frame, java.lang.Object modelElement, java.lang.String name)
Gets a value from an object in the given frame.static org.eclipse.emf.ecore.EEnumLiteral
getEENumLiteral(org.eclipse.emf.ecore.EEnum eEnum, java.lang.String id)
Returns the literal matching the given name or literal.java.lang.Object
getID(java.lang.Object element)
Returns the element id.static java.lang.Object
getNameOf(org.eclipse.emf.ecore.EObject eo)
Returns the name of an eObject.java.util.List<java.lang.Object>
getSupertypes(java.lang.Object type)
Returns the list of supertypes of a given type.java.lang.Object
getType(java.lang.Object value)
Returns the type of a given element.java.lang.Object
invoke(java.lang.reflect.Method method, java.lang.Object self, java.lang.Object[] arguments)
Invokes a method.boolean
isDeleted(java.lang.Object element)
Checks if an elements has been deleted in refining mode and does not belong to any resource.boolean
isMetametaElement(java.lang.Object element)
Returnstrue
if the given element is managed by the metametamodel of the current model adapter.boolean
isModelElement(java.lang.Object o)
Returnstrue
if the given object is managed by the current model adapter.boolean
prettyPrint(ExecEnv execEnv, java.io.PrintStream out, java.lang.Object value)
Displays in a readable format the given object.void
registerVMSupertypes(java.util.Map<java.lang.Class<?>,java.util.List<java.lang.Class<?>>> vmSupertypes)
Registers a map of supertypes.void
registerVMTypeOperations(java.util.Map<java.lang.Object,java.util.Map<java.lang.String,Operation>> vmTypeOperations)
Registers a map of operations.void
set(AbstractStackFrame frame, java.lang.Object modelElement, java.lang.String name, java.lang.Object value)
Sets a value on an object in the given frame.void
setAllowInterModelReferences(boolean allowInterModelRefs)
Sets "allow inter-model references" for this model adapter.void
setID(java.lang.Object element, java.lang.Object id)
Sets the element id.void
unSet(AbstractStackFrame frame, java.lang.Object modelElement, java.lang.String name)
Unsets a value on an object in the given frame.
-
-
-
Method Detail
-
setAllowInterModelReferences
public void setAllowInterModelReferences(boolean allowInterModelRefs)
Sets "allow inter-model references" for this model adapter.- Specified by:
setAllowInterModelReferences
in interfaceIModelAdapter
- Parameters:
allowInterModelRefs
- the parameter value
-
getNameOf
public static java.lang.Object getNameOf(org.eclipse.emf.ecore.EObject eo)
Returns the name of an eObject.- Parameters:
eo
- the eObject- Returns:
- the name of an eObject
-
getEENumLiteral
public static org.eclipse.emf.ecore.EEnumLiteral getEENumLiteral(org.eclipse.emf.ecore.EEnum eEnum, java.lang.String id)
Returns the literal matching the given name or literal.- Parameters:
eEnum
- the enumerationid
- the name or the literal- Returns:
- the literal
-
getSupertypes
public java.util.List<java.lang.Object> getSupertypes(java.lang.Object type)
Returns the list of supertypes of a given type.- Specified by:
getSupertypes
in interfaceIModelAdapter
- Parameters:
type
- the type- Returns:
- the list of supertypes
- See Also:
IModelAdapter.getSupertypes(java.lang.Object)
-
getType
public java.lang.Object getType(java.lang.Object value)
Returns the type of a given element.- Specified by:
getType
in interfaceIModelAdapter
- Parameters:
value
- the type- Returns:
- the type
- See Also:
IModelAdapter.getType(java.lang.Object)
-
prettyPrint
public boolean prettyPrint(ExecEnv execEnv, java.io.PrintStream out, java.lang.Object value)
Displays in a readable format the given object.- Specified by:
prettyPrint
in interfaceIModelAdapter
- Parameters:
execEnv
- the current execEnvout
- the output streamvalue
- the object to display- Returns:
- true if display has been successful
- See Also:
IModelAdapter.prettyPrint(org.eclipse.m2m.atl.engine.emfvm.lib.ExecEnv, java.io.PrintStream, java.lang.Object)
-
registerVMSupertypes
public void registerVMSupertypes(java.util.Map<java.lang.Class<?>,java.util.List<java.lang.Class<?>>> vmSupertypes)
Registers a map of supertypes.- Specified by:
registerVMSupertypes
in interfaceIModelAdapter
- Parameters:
vmSupertypes
- the map- See Also:
IModelAdapter.registerVMSupertypes(java.util.Map)
-
registerVMTypeOperations
public void registerVMTypeOperations(java.util.Map<java.lang.Object,java.util.Map<java.lang.String,Operation>> vmTypeOperations)
Registers a map of operations.- Specified by:
registerVMTypeOperations
in interfaceIModelAdapter
- Parameters:
vmTypeOperations
- the map- See Also:
IModelAdapter.registerVMTypeOperations(java.util.Map)
-
get
public java.lang.Object get(AbstractStackFrame frame, java.lang.Object modelElement, java.lang.String name)
Gets a value from an object in the given frame.- Specified by:
get
in interfaceIModelAdapter
- Parameters:
frame
- theAbstractStackFrame
modelElement
- the objectname
- the name of the attribute / feature which contains the value- Returns:
- the value
- See Also:
IModelAdapter.get(org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame, java.lang.Object, java.lang.String)
-
set
public void set(AbstractStackFrame frame, java.lang.Object modelElement, java.lang.String name, java.lang.Object value)
Sets a value on an object in the given frame.- Specified by:
set
in interfaceIModelAdapter
- Parameters:
frame
- theAbstractStackFrame
modelElement
- the objectname
- the name of the attribute / feature which will contain the valuevalue
- the value to set- See Also:
IModelAdapter.set(org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame, java.lang.Object, java.lang.String, java.lang.Object)
-
unSet
public void unSet(AbstractStackFrame frame, java.lang.Object modelElement, java.lang.String name)
Unsets a value on an object in the given frame.- Specified by:
unSet
in interfaceIModelAdapter
- Parameters:
frame
- theAbstractStackFrame
modelElement
- the objectname
- the name of the attribute / feature which will contain the value- See Also:
IModelAdapter.unSet(org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame, java.lang.Object, java.lang.String)
-
delete
public void delete(AbstractStackFrame frame, java.lang.Object modelElement)
Deletes an object on the given frame.- Specified by:
delete
in interfaceIModelAdapter
- Parameters:
frame
- theAbstractStackFrame
modelElement
- the object to delete- See Also:
IModelAdapter.delete(org.eclipse.m2m.atl.engine.emfvm.lib.AbstractStackFrame, java.lang.Object)
-
invoke
public java.lang.Object invoke(java.lang.reflect.Method method, java.lang.Object self, java.lang.Object[] arguments)
Invokes a method.- Specified by:
invoke
in interfaceIModelAdapter
- Parameters:
method
- the method to invokeself
- the object contextarguments
- the call arguments- Returns:
- the method result
- See Also:
IModelAdapter.invoke(java.lang.reflect.Method, java.lang.Object, java.lang.Object[])
-
finalizeModel
public void finalizeModel(IModel model)
Finalizes the given model.- Specified by:
finalizeModel
in interfaceIModelAdapter
- Parameters:
model
- the given model- See Also:
IModelAdapter.finalizeModel(org.eclipse.m2m.atl.core.IModel)
-
getID
public java.lang.Object getID(java.lang.Object element)
Returns the element id.- Specified by:
getID
in interfaceIModelAdapter
- Parameters:
element
- the element- Returns:
- the element id
- See Also:
IModelAdapter.getID(java.lang.Object)
-
isDeleted
public boolean isDeleted(java.lang.Object element)
Checks if an elements has been deleted in refining mode and does not belong to any resource.- Specified by:
isDeleted
in interfaceIModelAdapter
- Parameters:
element
- the element- Returns:
- ture if the element has been deleted. False otherwise.
- See Also:
IModelAdapter.isDeleted(java.lang.Object)
-
setID
public void setID(java.lang.Object element, java.lang.Object id)
Sets the element id.- Specified by:
setID
in interfaceIModelAdapter
- Parameters:
element
- the elementid
- the id to set- See Also:
IModelAdapter.setID(java.lang.Object, java.lang.Object)
-
isModelElement
public boolean isModelElement(java.lang.Object o)
Returnstrue
if the given object is managed by the current model adapter.- Specified by:
isModelElement
in interfaceIModelAdapter
- Parameters:
o
- the given object- Returns:
true
if the given object is managed by the current model adapter- See Also:
IModelAdapter.isModelElement(java.lang.Object)
-
isMetametaElement
public boolean isMetametaElement(java.lang.Object element)
Returnstrue
if the given element is managed by the metametamodel of the current model adapter.- Specified by:
isMetametaElement
in interfaceIModelAdapter
- Parameters:
element
- the given element- Returns:
true
if the given element is managed by the metametamodel of the current model adapter- See Also:
IModelAdapter.isMetametaElement(java.lang.Object)
-
-