Class EMFVMLauncher
java.lang.Object
org.eclipse.m2m.atl.engine.emfvm.launch.EMFVMLauncher
- All Implemented Interfaces:
ILauncher
- Direct Known Subclasses:
EMFVMUILauncher
The EMFVM implementation of the
ILauncher
interface.-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
TheILauncher
extension name.static final String
The Default model factory name to use.Fields inherited from interface org.eclipse.m2m.atl.core.launch.ILauncher
DEBUG_MODE, RUN_MODE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addInModel
(IModel model, String name, String referenceModelName) Adds an input model to the transformation context.void
addInOutModel
(IModel model, String name, String referenceModelName) Adds an input/output model to the transformation context.void
addLibrary
(String name, Object library) Adds a preloaded library module to the transformation, or anInputStream
.protected void
Adds any model to the local map.void
addOutModel
(IModel model, String name, String referenceModelName) Adds an output model to the transformation context.protected ASM
getASMFromObject
(Object module) Load a module if necessary.Returns the default ModelFactory name.getLibrary
(String libraryName) Returns a previously added library with the given name.Returns a previously added model with the given name.String[]
getModes()
Returns the supported modes.getName()
Returns theILauncher
name.void
initialize
(Map<String, Object> parameters) Initialize the launcher.protected Object
internalLaunch
(ITool[] tools, org.eclipse.core.runtime.IProgressMonitor monitor, Map<String, Object> options, Object... modules) Launches the transformation with preloaded modules.launch
(String mode, org.eclipse.core.runtime.IProgressMonitor monitor, Map<String, Object> options, Object... modules) Launches the transformation using the given parameters and the given set of preloaded modules, orInputStream
.loadModule
(InputStream inputStream) Loads a transformation module from anInputStream
.
-
Field Details
-
LAUNCHER_NAME
TheILauncher
extension name.- See Also:
-
MODEL_FACTORY_NAME
The Default model factory name to use.- See Also:
-
models
-
libraries
-
-
Constructor Details
-
EMFVMLauncher
public EMFVMLauncher()
-
-
Method Details
-
getName
Description copied from interface:ILauncher
Returns theILauncher
name. -
addModel
Adds any model to the local map.- Parameters:
model
- theIModel
name
- the model namereferenceModelName
- the model reference model name
-
addInModel
Adds an input model to the transformation context. This method is also used to load the metamodels used in this transformation.- Specified by:
addInModel
in interfaceILauncher
- Parameters:
model
- the loaded modelname
- the name of the model as described in the main modulereferenceModelName
- the name of the metamodel as described in the main module- See Also:
-
addInOutModel
Adds an input/output model to the transformation context.- Specified by:
addInOutModel
in interfaceILauncher
- Parameters:
model
- the loaded modelname
- the name of the model as described in the main modulereferenceModelName
- the name of the metamodel as described in the main module- See Also:
-
addOutModel
Adds an output model to the transformation context.- Specified by:
addOutModel
in interfaceILauncher
- Parameters:
model
- the loaded modelname
- the name of the model as described in the main modulereferenceModelName
- the name of the metamodel as described in the main module- See Also:
-
addLibrary
Adds a preloaded library module to the transformation, or anInputStream
.- Specified by:
addLibrary
in interfaceILauncher
- Parameters:
name
- the name of the library as described in the main modulelibrary
- the loaded library- See Also:
-
initialize
Initialize the launcher.- Specified by:
initialize
in interfaceILauncher
- Parameters:
parameters
- initialization options- See Also:
-
launch
public Object launch(String mode, org.eclipse.core.runtime.IProgressMonitor monitor, Map<String, Object> options, Object... modules) Launches the transformation using the given parameters and the given set of preloaded modules, orInputStream
.- Specified by:
launch
in interfaceILauncher
- Parameters:
mode
- the launching modemonitor
- the progress monitoroptions
- vm optionsmodules
- single module/ordered module set. A module set is used for superimposition, where the first module of the set is override by the next ones. A module can be passed as an InputStream or directly a module loaded by the loadModule method.- Returns:
- the transformation return result
- See Also:
-
internalLaunch
protected Object internalLaunch(ITool[] tools, org.eclipse.core.runtime.IProgressMonitor monitor, Map<String, Object> options, Object... modules) Launches the transformation with preloaded modules.- Parameters:
tools
- the execution toolsmonitor
- the progression monitoroptions
- the launching optionsmodules
- the transformation modules- Returns:
- the execution result
-
loadModule
Loads a transformation module from anInputStream
.- Specified by:
loadModule
in interfaceILauncher
- Parameters:
inputStream
- the input stream to load- Returns:
- the loaded module
- See Also:
-
getASMFromObject
Load a module if necessary.- Parameters:
module
- the givenASM
orInputStream
.- Returns:
- the
ASM
-
getModel
Returns a previously added model with the given name. -
getLibrary
Returns a previously added library with the given name.- Specified by:
getLibrary
in interfaceILauncher
- Parameters:
libraryName
- the library name- Returns:
- a previously added library with the given name
- See Also:
-
getDefaultModelFactoryName
Returns the default ModelFactory name.- Specified by:
getDefaultModelFactoryName
in interfaceILauncher
- Returns:
- the default ModelFactory name
- See Also:
-
getModes
Returns the supported modes.
-