Class PullSource

java.lang.Object
net.sf.saxon.pull.PullSource
All Implemented Interfaces:
Source, ActiveSource

public class PullSource extends Object implements ActiveSource
A PullSource is a JAXP Source that encapsulates a PullProvider - that is, an object that supplies an XML document as a sequence of events that are read under the control of the recipient. Note that although PullSource implements the JAXP Source interface, it is not necessarily acceptable to every JAXP implementation that accepts a Source as input: Source is essentially a marker interface and users of Source objects need to understand the individual implementation.
  • Constructor Details

    • PullSource

      public PullSource(PullProvider provider)
      Create a PullSource based on a supplied PullProvider
      Parameters:
      provider - the underlying PullProvider
  • Method Details

    • getPullProvider

      public PullProvider getPullProvider()
      Get the PullProvider
      Returns:
      the underlying PullProvider
    • setSystemId

      public void setSystemId(String systemId)
      Set the system identifier for this Source.

      The system identifier is optional if the source does not get its data from a URL, but it may still be useful to provide one. The application can use a system identifier, for example, to resolve relative URIs and to include in error messages and warnings.

      Specified by:
      setSystemId in interface Source
      Parameters:
      systemId - The system identifier as a URL string.
    • getSystemId

      public String getSystemId()
      Get the system identifier that was set with setSystemId.
      Specified by:
      getSystemId in interface Source
      Returns:
      The system identifier that was set with setSystemId, or null if setSystemId was not called.
    • deliver

      public void deliver(Receiver receiver, ParseOptions options) throws XPathException
      Description copied from interface: ActiveSource
      Deliver the content of the source to a supplied Receiver.

      For many (but not all) implementations of Source, this method consumes the source and can therefore only be called once.

      Specified by:
      deliver in interface ActiveSource
      Parameters:
      receiver - the receiver to which events representing the parsed XML document will be sent
      options - options for parsing the source
      Throws:
      XPathException - if parsing fails for any reason. The detailed diagnostics will have been sent to the error reporter.