## org.eclipse.jst.ws.jaxws.dom.runtime.api
Interface IWsDOMRuntimeExtension

All Known Implementing Classes:
  Jee5WsDomRuntimeExtension

    public interface IWsDOMRuntimeExtension

This interface should be implemented by all runtime which want to have DOM Tree representation on top of them.

Author:
  Georgi Hristov I036201

Method Summary
`void` `addLoadListener(IWsDomLoadListener listener)` Adds a load listener to be notified in load events.
`void` `createDOM(org.eclipse.core.runtime.IProgressMonitor monitor)` This method should instantiate the DOM instance for the runtime and loads the data into it.
`IDOM` `getDOM()` To get a handle to the DOM instance available for this runtime.
`void` `removeLoadListener(IWsDomLoadListener listener)` Removes the listener from DOM loading listeners list

Method Detail

### createDOM

    void createDOM(org.eclipse.core.runtime.IProgressMonitor monitor)
                   throws java.io.IOException,
                          WsDOMLoadCanceledException

  This method should instantiate the DOM instance for the runtime and loads the data into it. The method locks the workspace root during execution. If you call this method during loading (i.e. somebody already called it in different thread) the method will block until the load finishes instead of triggering DOM reload.

  Parameters:
    `monitor` - progress monitor to be used during loading, cancelling the load via monitor is supported
  Throws:
    `java.io.IOException` - in case the DOM loading is not able to read required data
    `WsDOMLoadCanceledException` - in case the loading was cancelled via provided `monitor`.

### addLoadListener

    void addLoadListener(IWsDomLoadListener listener)

  Adds a load listener to be notified in load events. In case the loading has already been started this listener's methods are called depending on the current state of the load. `IWsDomLoadListener.finished()` method is called in any case regardless of whether loading has been cancelled or not.

  Parameters:
    `listener` -

### removeLoadListener

    void removeLoadListener(IWsDomLoadListener listener)

  Removes the listener from DOM loading listeners list

  Parameters:
    `listener` -

### getDOM

    IDOM getDOM()
                throws WsDOMLoadCanceledException

  To get a handle to the DOM instance available for this runtime.

  Returns:
    the DOM instance or `null` in case the loading was not started yet or is not finished yet.
  Throws:
    `WsDOMLoadCanceledException` - in case loading has been called already but the load has been cancelled