Class AtlModelAnalyser


  • public class AtlModelAnalyser
    extends java.lang.Object
    Atl model analyser, used to get information from an incomplete ATL model.
    • Constructor Summary

      Constructors 
      Constructor Description
      AtlModelAnalyser​(AtlCompletionHelper helper, org.eclipse.emf.ecore.EObject emfRoot, int modelOffset, java.lang.String fileContext)
      Creates an analyser for ATL models.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void displayModel()
      Debugging utility (for a developer purpose).
      org.eclipse.emf.ecore.EObject getContainer​(org.eclipse.emf.ecore.EObject element)
      Search the parent element of the given element, if present.
      java.util.List<org.eclipse.emf.ecore.EObject> getContainers​(org.eclipse.emf.ecore.EObject element)
      Computes an ordered list of containers of the given element.
      java.lang.String getContext​(int offset)
      Compute the context of the given offset.
      AtlCompletionHelper getHelper()  
      org.eclipse.emf.ecore.EObject getLastLostElementByType​(java.lang.String typeName)
      Returns the last lost types having the given type.
      org.eclipse.emf.ecore.EObject getLocatedElement​(int offset)
      Returns the element available at the given offset
      java.util.List<org.eclipse.emf.ecore.EObject> getLostElementsByType​(java.lang.String typeName)
      Returns the list of the lost types having the given type.
      java.util.List<java.lang.String> getLostTypesNames()
      Returns the list of the lost types names.
      int getModelOffset()  
      org.eclipse.emf.ecore.EObject getPreviousElement​(org.eclipse.emf.ecore.EObject element)
      Computes the previous element in the model.
      org.eclipse.emf.ecore.EObject getPreviousElement​(org.eclipse.emf.ecore.EObject element, java.lang.String type)
      Computes the previous element in the model.
      org.eclipse.emf.ecore.EObject getPreviouslyParsedElement​(org.eclipse.emf.ecore.EObject element)
      Computes the previous element in the model.
      org.eclipse.emf.ecore.EObject getRoot()  
      java.lang.String getText​(org.eclipse.emf.ecore.EObject locatedElement)
      Returns the text associated to the given located element.
      • Methods inherited from class java.lang.Object

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

      • AtlModelAnalyser

        public AtlModelAnalyser​(AtlCompletionHelper helper,
                                org.eclipse.emf.ecore.EObject emfRoot,
                                int modelOffset,
                                java.lang.String fileContext)
        Creates an analyser for ATL models.
        Parameters:
        helper - the completion helper
        emfRoot - the model root
        modelOffset - the model offset
        fileContext - the main context of the file
    • Method Detail

      • getContext

        public java.lang.String getContext​(int offset)
                                    throws org.eclipse.jface.text.BadLocationException
        Compute the context of the given offset.
        Parameters:
        offset - the current offset
        Returns:
        the context
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getContainers

        public java.util.List<org.eclipse.emf.ecore.EObject> getContainers​(org.eclipse.emf.ecore.EObject element)
                                                                    throws org.eclipse.jface.text.BadLocationException
        Computes an ordered list of containers of the given element.
        Parameters:
        element - the element
        Returns:
        the list of containers
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getContainer

        public org.eclipse.emf.ecore.EObject getContainer​(org.eclipse.emf.ecore.EObject element)
                                                   throws org.eclipse.jface.text.BadLocationException
        Search the parent element of the given element, if present.
        Parameters:
        element - the element
        Returns:
        the parent element
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getPreviouslyParsedElement

        public org.eclipse.emf.ecore.EObject getPreviouslyParsedElement​(org.eclipse.emf.ecore.EObject element)
                                                                 throws org.eclipse.jface.text.BadLocationException
        Computes the previous element in the model.
        Parameters:
        element - the current element
        Returns:
        the previous element
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getPreviousElement

        public org.eclipse.emf.ecore.EObject getPreviousElement​(org.eclipse.emf.ecore.EObject element)
                                                         throws org.eclipse.jface.text.BadLocationException
        Computes the previous element in the model.
        Parameters:
        element - the current element
        Returns:
        the previous element
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getPreviousElement

        public org.eclipse.emf.ecore.EObject getPreviousElement​(org.eclipse.emf.ecore.EObject element,
                                                                java.lang.String type)
                                                         throws org.eclipse.jface.text.BadLocationException
        Computes the previous element in the model.
        Parameters:
        element - the current element
        type - the previous element type
        Returns:
        the previous element
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getLocatedElement

        public org.eclipse.emf.ecore.EObject getLocatedElement​(int offset)
                                                        throws org.eclipse.jface.text.BadLocationException
        Returns the element available at the given offset
        Parameters:
        offset - the current offset
        Returns:
        the model element
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getLostTypesNames

        public java.util.List<java.lang.String> getLostTypesNames()
        Returns the list of the lost types names. A type is "lost" when it has no container and no location.
        Returns:
        the list of the lost types names
      • getLostElementsByType

        public java.util.List<org.eclipse.emf.ecore.EObject> getLostElementsByType​(java.lang.String typeName)
        Returns the list of the lost types having the given type.
        Parameters:
        typeName - the type name
        Returns:
        the list of the lost types
      • getLastLostElementByType

        public org.eclipse.emf.ecore.EObject getLastLostElementByType​(java.lang.String typeName)
        Returns the last lost types having the given type.
        Parameters:
        typeName - the type name
        Returns:
        the lost types
      • displayModel

        public void displayModel()
        Debugging utility (for a developer purpose).
      • getText

        public java.lang.String getText​(org.eclipse.emf.ecore.EObject locatedElement)
                                 throws org.eclipse.jface.text.BadLocationException
        Returns the text associated to the given located element.
        Parameters:
        locatedElement - the element
        Returns:
        the text associated to the given located element
        Throws:
        org.eclipse.jface.text.BadLocationException
      • getModelOffset

        public int getModelOffset()
      • getRoot

        public org.eclipse.emf.ecore.EObject getRoot()