Package org.eclipse.m2m.atl.core.service

## Class LauncherService

- java.lang.Object
- - org.eclipse.m2m.atl.core.service.LauncherService

    public final class LauncherService
    extends java.lang.Object

The LauncherService utility class provides a generic way to launch a transformation using the ATL Core API. To parameterize launch accurately, use directly the `ILauncher` implementations.

### Field Summary

Fields
`static java.lang.String` `REFINING_TRACE_METAMODEL` The refining trace metamodel name, as defined by the compiler.
`static java.lang.String` `REFINING_TRACE_MODEL` The refining trace model name, as defined by the compiler.

### Method Summary

All Methods Static Methods Concrete Methods
`static boolean` `getBooleanOption​(java.lang.Object value, boolean defaultValue)` Returns the boolean value of the given input, or the defaultValue if null.
`static java.lang.String` `getRefinedModelName​(java.lang.String modelName)` Returns the refined model name.

`static java.lang.Object`

`launch​(java.lang.String mode, org.eclipse.core.runtime.IProgressMonitor monitor, ILauncher launcher, java.util.Map<java.lang.String,​java.lang.String> inModels, java.util.Map<java.lang.String,​java.lang.String> inoutModels, java.util.Map<java.lang.String,​java.lang.String> outModels, java.util.Map<java.lang.String,​java.lang.String> paths, java.util.Map<java.lang.String,​java.lang.Object> options, java.util.Map<java.lang.String,​java.io.InputStream> libraries, java.io.InputStream... modules)`

Launches a transformation using the given parameters.

`static java.lang.Object`

`launch​(java.lang.String mode, org.eclipse.core.runtime.IProgressMonitor monitor, ILauncher launcher, java.util.Map<java.lang.String,​ModelFactory> modelFactories, java.util.Map<java.lang.String,​IExtractor> extractors, java.util.Map<java.lang.String,​IInjector> injectors, java.util.Map<java.lang.String,​java.lang.String> inModels, java.util.Map<java.lang.String,​java.lang.String> inoutModels, java.util.Map<java.lang.String,​java.lang.String> outModels, java.util.Map<java.lang.String,​java.lang.String> paths, java.util.Map<java.lang.String,​java.lang.Object> options, java.util.Map<java.lang.String,​java.io.InputStream> libraries, java.io.InputStream... modules)`

Launches a transformation using the given parameters.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### REFINING_TRACE_METAMODEL

    public static final java.lang.String REFINING_TRACE_METAMODEL

The refining trace metamodel name, as defined by the compiler.

See Also:
  Constant Field Values

#### REFINING_TRACE_MODEL

    public static final java.lang.String REFINING_TRACE_MODEL

The refining trace model name, as defined by the compiler.

See Also:
  Constant Field Values

### Method Detail

#### launch

    public static java.lang.Object launch​(java.lang.String mode,
                                          org.eclipse.core.runtime.IProgressMonitor monitor,
                                          ILauncher launcher,
                                          java.util.Map<java.lang.String,​java.lang.String> inModels,
                                          java.util.Map<java.lang.String,​java.lang.String> inoutModels,
                                          java.util.Map<java.lang.String,​java.lang.String> outModels,
                                          java.util.Map<java.lang.String,​java.lang.String> paths,
                                          java.util.Map<java.lang.String,​java.lang.Object> options,
                                          java.util.Map<java.lang.String,​java.io.InputStream> libraries,
                                          java.io.InputStream... modules)
                                   throws ATLCoreException

Launches a transformation using the given parameters. Process the injections, extractions.

Parameters:
  `mode` - the launching mode
  `monitor` - the progress monitor
  `launcher` - the `ILauncher`
  `inModels` - a map defining the source models names: [model name, reference model name]
  `inoutModels` - a map defining the inout models names: [model name, reference model name]
  `outModels` - a map defining the target models names: [model name, reference model name]
  `paths` - a map defining the location of each model name: [model name, model location]
  `options` - a map of transformation options: [key, value]
  `libraries` - a map of libraries modules: [library name, module]
  `modules` - a list of modules to superimpose. The first module overrides the next ones.
Returns:
  the transformation result
Throws:
  `ATLCoreException`

#### launch

    public static java.lang.Object launch​(java.lang.String mode,
                                          org.eclipse.core.runtime.IProgressMonitor monitor,
                                          ILauncher launcher,
                                          java.util.Map<java.lang.String,​ModelFactory> modelFactories,
                                          java.util.Map<java.lang.String,​IExtractor> extractors,
                                          java.util.Map<java.lang.String,​IInjector> injectors,
                                          java.util.Map<java.lang.String,​java.lang.String> inModels,
                                          java.util.Map<java.lang.String,​java.lang.String> inoutModels,
                                          java.util.Map<java.lang.String,​java.lang.String> outModels,
                                          java.util.Map<java.lang.String,​java.lang.String> paths,
                                          java.util.Map<java.lang.String,​java.lang.Object> options,
                                          java.util.Map<java.lang.String,​java.io.InputStream> libraries,
                                          java.io.InputStream... modules)
                                   throws ATLCoreException

Launches a transformation using the given parameters. Process the injections, extractions.

Parameters:
  `mode` - the launching mode
  `monitor` - the progress monitor
  `launcher` - the `ILauncher`
  `modelFactories` - a map defining which `ModelFactory` to use, for each model name
  `extractors` - a map defining which `IExtractor` to use, for each model name
  `injectors` - a map defining which `IInjector` to use, for each model name
  `inModels` - a map defining the source models names: [model name, reference model name]
  `inoutModels` - a map defining the inout models names: [model name, reference model name]
  `outModels` - a map defining the target models names: [model name, reference model name]
  `paths` - a map defining the location of each model name: [model name, model location]
  `options` - a map of transformation options: [key, value]
  `libraries` - a map of libraries modules: [library name, module]
  `modules` - a list of modules to superimpose. The first module overrides the next ones.
Returns:
  the transformation result
Throws:
  `ATLCoreException`

#### getRefinedModelName

    public static java.lang.String getRefinedModelName​(java.lang.String modelName)

Returns the refined model name.

Parameters:
  `modelName` - the inital model name
Returns:
  the refined model name

#### getBooleanOption

    public static boolean getBooleanOption​(java.lang.Object value,
                                           boolean defaultValue)

Returns the boolean value of the given input, or the defaultValue if null.

Parameters:
  `value` - the input value
  `defaultValue` - the default boolean value to return in case of null
Returns:
  the boolean value of the given input, or the defaultValue if null