Interface IV8Model

  • All Superinterfaces:
    org.eclipse.handly.model.IElement, org.eclipse.handly.model.IElementExtension, IV8Element
    All Known Implementing Classes:
    V8Model

    public interface IV8Model
    extends IV8Element
    Represents the root V8 element corresponding to the workspace. Since there is only one such root element, it is commonly referred to as the V8 model element.
    See Also:
    V8ModelCore.getV8Model()
    Restriction:
    This interface is not intended to be extended by clients.
    Restriction:
    This interface is not intended to be implemented by clients.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void addElementChangeListener​(org.eclipse.handly.model.IElementChangeListener listener)
      Adds the given listener for changes to elements in the V8 model.
      IV8ProjectHandle getV8Project​(String name)
      Returns the V8 project with the given name.
      IV8ProjectHandle[] getV8Projects()
      Returns the V8 projects in this V8 model.
      org.eclipse.core.resources.IWorkspace getWorkspace()
      Returns the workspace associated with this V8 model.
      void removeElementChangeListener​(org.eclipse.handly.model.IElementChangeListener listener)
      Removes the given element change listener.
      • Methods inherited from interface org.eclipse.handly.model.IElement

        equals, hashCode
      • Methods inherited from interface org.eclipse.handly.model.IElementExtension

        exists, getAncestor, getChildren, getChildren, getLocationUri, getName, getResource
    • Method Detail

      • addElementChangeListener

        void addElementChangeListener​(org.eclipse.handly.model.IElementChangeListener listener)
        Adds the given listener for changes to elements in the V8 model. Has no effect if an identical listener is already registered.

        Once registered, a listener starts receiving notification of changes to elements in the V8 model. The listener continues to receive notifications until it is removed.

        Parameters:
        listener - the listener (not null)
        See Also:
        removeElementChangeListener(IElementChangeListener)
      • removeElementChangeListener

        void removeElementChangeListener​(org.eclipse.handly.model.IElementChangeListener listener)
        Removes the given element change listener. Has no effect if an identical listener is not registered.
        Parameters:
        listener - the listener (not null)
      • getV8Project

        IV8ProjectHandle getV8Project​(String name)
        Returns the V8 project with the given name. The given name must be a valid path segment as defined by IPath.isValidSegment(String). This is a handle-only method. The project may or may not exist.
        Parameters:
        name - the name of the V8 project (not null)
        Returns:
        the V8 project with the given name (never null)
      • getV8Projects

        IV8ProjectHandle[] getV8Projects()
                                  throws org.eclipse.core.runtime.CoreException
        Returns the V8 projects in this V8 model.
        Returns:
        the V8 projects in this V8 model (never null)
        Throws:
        org.eclipse.core.runtime.CoreException - if this request fails
      • getWorkspace

        org.eclipse.core.resources.IWorkspace getWorkspace()
        Returns the workspace associated with this V8 model. This is a handle-only method.
        Returns:
        the workspace associated with this V8 model (never null)