Class EMFVMLauncher

    • Constructor Summary

      Constructors 
      Constructor Description
      EMFVMLauncher()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addInModel​(IModel model, java.lang.String name, java.lang.String referenceModelName)
      Adds an input model to the transformation context.
      void addInOutModel​(IModel model, java.lang.String name, java.lang.String referenceModelName)
      Adds an input/output model to the transformation context.
      void addLibrary​(java.lang.String name, java.lang.Object library)
      Adds a preloaded library module to the transformation, or an InputStream.
      protected void addModel​(IModel model, java.lang.String name, java.lang.String referenceModelName)
      Adds any model to the local map.
      void addOutModel​(IModel model, java.lang.String name, java.lang.String referenceModelName)
      Adds an output model to the transformation context.
      protected ASM getASMFromObject​(java.lang.Object module)
      Load a module if necessary.
      java.lang.String getDefaultModelFactoryName()
      Returns the default ModelFactory name.
      java.lang.Object getLibrary​(java.lang.String libraryName)
      Returns a previously added library with the given name.
      IModel getModel​(java.lang.String modelName)
      Returns a previously added model with the given name.
      java.lang.String[] getModes()
      Returns the supported modes.
      java.lang.String getName()
      Returns the ILauncher name.
      void initialize​(java.util.Map<java.lang.String,​java.lang.Object> parameters)
      Initialize the launcher.
      protected java.lang.Object internalLaunch​(ITool[] tools, org.eclipse.core.runtime.IProgressMonitor monitor, java.util.Map<java.lang.String,​java.lang.Object> options, java.lang.Object... modules)
      Launches the transformation with preloaded modules.
      java.lang.Object launch​(java.lang.String mode, org.eclipse.core.runtime.IProgressMonitor monitor, java.util.Map<java.lang.String,​java.lang.Object> options, java.lang.Object... modules)
      Launches the transformation using the given parameters and the given set of preloaded modules, or InputStream.
      java.lang.Object loadModule​(java.io.InputStream inputStream)
      Loads a transformation module from an InputStream.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • MODEL_FACTORY_NAME

        public static final java.lang.String MODEL_FACTORY_NAME
        The Default model factory name to use.
        See Also:
        Constant Field Values
      • models

        protected java.util.Map<java.lang.String,​IModel> models
      • libraries

        protected java.util.Map<java.lang.String,​ASM> libraries
    • Constructor Detail

      • EMFVMLauncher

        public EMFVMLauncher()
    • Method Detail

      • addModel

        protected void addModel​(IModel model,
                                java.lang.String name,
                                java.lang.String referenceModelName)
        Adds any model to the local map.
        Parameters:
        model - the IModel
        name - the model name
        referenceModelName - the model reference model name
      • addInModel

        public void addInModel​(IModel model,
                               java.lang.String name,
                               java.lang.String referenceModelName)
        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 interface ILauncher
        Parameters:
        model - the loaded model
        name - the name of the model as described in the main module
        referenceModelName - the name of the metamodel as described in the main module
        See Also:
        ILauncher.addInModel(org.eclipse.m2m.atl.core.IModel, java.lang.String, java.lang.String)
      • addLibrary

        public void addLibrary​(java.lang.String name,
                               java.lang.Object library)
        Adds a preloaded library module to the transformation, or an InputStream.
        Specified by:
        addLibrary in interface ILauncher
        Parameters:
        name - the name of the library as described in the main module
        library - the loaded library
        See Also:
        ILauncher.addLibrary(java.lang.String, java.lang.Object)
      • initialize

        public void initialize​(java.util.Map<java.lang.String,​java.lang.Object> parameters)
        Initialize the launcher.
        Specified by:
        initialize in interface ILauncher
        Parameters:
        parameters - initialization options
        See Also:
        ILauncher.initialize(java.util.Map)
      • launch

        public java.lang.Object launch​(java.lang.String mode,
                                       org.eclipse.core.runtime.IProgressMonitor monitor,
                                       java.util.Map<java.lang.String,​java.lang.Object> options,
                                       java.lang.Object... modules)
        Launches the transformation using the given parameters and the given set of preloaded modules, or InputStream.
        Specified by:
        launch in interface ILauncher
        Parameters:
        mode - the launching mode
        monitor - the progress monitor
        options - vm options
        modules - 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:
        ILauncher.launch(java.lang.String, org.eclipse.core.runtime.IProgressMonitor, java.util.Map, java.lang.Object[])
      • internalLaunch

        protected java.lang.Object internalLaunch​(ITool[] tools,
                                                  org.eclipse.core.runtime.IProgressMonitor monitor,
                                                  java.util.Map<java.lang.String,​java.lang.Object> options,
                                                  java.lang.Object... modules)
        Launches the transformation with preloaded modules.
        Parameters:
        tools - the execution tools
        monitor - the progression monitor
        options - the launching options
        modules - the transformation modules
        Returns:
        the execution result
      • loadModule

        public java.lang.Object loadModule​(java.io.InputStream inputStream)
        Loads a transformation module from an InputStream.
        Specified by:
        loadModule in interface ILauncher
        Parameters:
        inputStream - the input stream to load
        Returns:
        the loaded module
        See Also:
        ILauncher.loadModule(java.io.InputStream)
      • getASMFromObject

        protected ASM getASMFromObject​(java.lang.Object module)
        Load a module if necessary.
        Parameters:
        module - the given ASM or InputStream.
        Returns:
        the ASM
      • getModel

        public IModel getModel​(java.lang.String modelName)
        Returns a previously added model with the given name.
        Specified by:
        getModel in interface ILauncher
        Parameters:
        modelName - the model name
        Returns:
        a previously added model with the given name
        See Also:
        ILauncher.getModel(java.lang.String)
      • getLibrary

        public java.lang.Object getLibrary​(java.lang.String libraryName)
        Returns a previously added library with the given name.
        Specified by:
        getLibrary in interface ILauncher
        Parameters:
        libraryName - the library name
        Returns:
        a previously added library with the given name
        See Also:
        ILauncher.getLibrary(java.lang.String)
      • getModes

        public java.lang.String[] getModes()
        Returns the supported modes.
        Specified by:
        getModes in interface ILauncher
        Returns:
        the supported modes
        See Also:
        ILauncher.getModes()