Class AtlDefaultCompiler

  • All Implemented Interfaces:
    AtlStandaloneCompiler
    Direct Known Subclasses:
    Atl2004Compiler, Atl2006Compiler

    public abstract class AtlDefaultCompiler
    extends java.lang.Object
    implements AtlStandaloneCompiler
    Default implementation of methods necessary for all ATL compilers. Attention: This class MUST NOT reference any types of the platform (e.g. IFile), because it must be usable stand-alone, without Eclipse, too.
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      CompileTimeError[] compile​(java.io.InputStream in, java.lang.String outputFileName)
      Compiles an ATL script and returns easily accessible error messages.
      CompileTimeError[] compile​(java.io.Reader in, java.lang.String outputFileName)
      Compiles an ATL script and returns easily accessible error messages.
      org.eclipse.emf.ecore.EObject[] compileWithProblemModel​(java.io.InputStream in, java.io.OutputStream outputStream)
      Compiles an ATL script and returns easily accessible error messages.
      org.eclipse.emf.ecore.EObject[] compileWithProblemModel​(java.io.InputStream in, java.lang.String outputFileName)
      Compiles an ATL script and returns easily accessible error messages.
      org.eclipse.emf.ecore.EObject[] compileWithProblemModel​(java.io.Reader in, java.io.OutputStream outputStream)
      Compiles an ATL script and returns easily accessible error messages.
      org.eclipse.emf.ecore.EObject[] compileWithProblemModel​(java.io.Reader in, java.lang.String outputFileName)
      Compiles an ATL script and returns easily accessible error messages.
      org.eclipse.emf.ecore.EObject[] compileWithProblemModel​(IModel atlModel, java.io.OutputStream outputStream)
      Compiles an ATL script and returns easily accessible error messages.
      org.eclipse.emf.ecore.EObject[] compileWithProblemModel​(IModel atlModel, java.lang.String outputFileName)
      Compiles an ATL script and returns easily accessible error messages.
      protected abstract java.net.URL getCodegeneratorURL()
      Returns the URL of the ATL compiler transformation; to be implemented by concrete subclass.
      static java.io.OutputStream getCompilationOutputStream()
      Allow to write the compilation result on an OutputStream.
      protected abstract java.net.URL getSemanticAnalyzerURL()
      Returns the ATL WFR URL (whatever that may be); to be implemented by concrete subclass.
      org.eclipse.emf.ecore.EObject[] internalCompile​(java.io.Reader in, java.lang.String outputFileName)
      Compiles an ATL source file.
      org.eclipse.emf.ecore.EObject[] internalCompile​(IModel atlmodel, java.lang.String outputFileName)
      Compiles an ATL model.
      • Methods inherited from class java.lang.Object

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

      • AtlDefaultCompiler

        public AtlDefaultCompiler()
    • Method Detail

      • getSemanticAnalyzerURL

        protected abstract java.net.URL getSemanticAnalyzerURL()
        Returns the ATL WFR URL (whatever that may be); to be implemented by concrete subclass.
        Returns:
        the URL
      • getCodegeneratorURL

        protected abstract java.net.URL getCodegeneratorURL()
        Returns the URL of the ATL compiler transformation; to be implemented by concrete subclass.
        Returns:
        the URL of the compiler itself
      • internalCompile

        public org.eclipse.emf.ecore.EObject[] internalCompile​(java.io.Reader in,
                                                               java.lang.String outputFileName)
        Compiles an ATL source file.
        Parameters:
        in - The InputStream to get atl source from.
        outputFileName - The name of the file to which the ATL compiled program will be saved.
        Returns:
        A List of EObject instance of Problem.
      • internalCompile

        public org.eclipse.emf.ecore.EObject[] internalCompile​(IModel atlmodel,
                                                               java.lang.String outputFileName)
                                                        throws ATLCoreException,
                                                               java.io.IOException,
                                                               ATLExecutionException
        Compiles an ATL model.
        Parameters:
        atlmodel - The atl Model
        outputFileName - The name of the file to which the ATL compiled program will be saved.
        Returns:
        A List of EObject instance of Problem.
        Throws:
        ATLCoreException
        java.io.IOException
        ATLExecutionException
      • getCompilationOutputStream

        public static java.io.OutputStream getCompilationOutputStream()
        Allow to write the compilation result on an OutputStream.
        Returns:
        returns the OutputStream previously set by the internalCompile method