net.sf.saxon.evpull
Class EventToStaxBridge

java.lang.Object
  extended by net.sf.saxon.evpull.EventToStaxBridge
All Implemented Interfaces:
javax.xml.stream.XMLStreamConstants, javax.xml.stream.XMLStreamReader

public class EventToStaxBridge
extends Object
implements javax.xml.stream.XMLStreamReader

This class bridges EventIterator events to XMLStreamReader (Stax) events. That is, it acts as an XMLStreamReader, fetching the underlying data from an EventIterator.

An EventIterator may provide access to any XDM sequence, whereas an XMLStreamReader always reads a document. The conversion of a sequence to a document follows the rules for "normalizing" a sequence in the Serialization specification: for example, atomic values are converted into text nodes, with adjacent atomic values being space-separated.


Nested Class Summary
static class EventToStaxBridge.DummyLocation
           
 
Field Summary
 
Fields inherited from interface javax.xml.stream.XMLStreamConstants
ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT
 
Constructor Summary
EventToStaxBridge(EventIterator provider, PipelineConfiguration pipe)
          Create a EventToStaxBridge instance, which wraps a Saxon EventIterator as a Stax XMLStreamReader
 
Method Summary
 void close()
           
 int getAttributeCount()
           
 String getAttributeLocalName(int i)
           
 QName getAttributeName(int i)
           
 String getAttributeNamespace(int i)
           
 String getAttributePrefix(int i)
           
 String getAttributeType(int i)
           
 String getAttributeValue(int i)
           
 String getAttributeValue(String uri, String local)
           
 String getCharacterEncodingScheme()
           
 String getElementText()
           
 String getEncoding()
           
 int getEventType()
           
 String getLocalName()
           
 javax.xml.stream.Location getLocation()
           
 QName getName()
           
 NamePool getNamePool()
          Get the NamePool used by this bridge to translate integer name codes to QNames
 NamespaceContext getNamespaceContext()
           
 int getNamespaceCount()
           
 String getNamespacePrefix(int i)
           
 String getNamespaceURI()
           
 String getNamespaceURI(int i)
           
 String getNamespaceURI(String prefix)
           
 String getPIData()
           
 String getPITarget()
           
 String getPrefix()
           
 Object getProperty(String s)
           
 EventIterator getProvider()
          Get the underlying event stream
 String getText()
           
 char[] getTextCharacters()
           
 int getTextCharacters(int sourceStart, char[] target, int targetStart, int length)
           
 int getTextLength()
           
 int getTextStart()
           
 String getVersion()
           
 boolean hasName()
           
 boolean hasNext()
           
 boolean hasText()
           
 boolean isAttributeSpecified(int i)
           
 boolean isCharacters()
           
 boolean isEndElement()
           
 boolean isStandalone()
           
 boolean isStartElement()
           
 boolean isWhiteSpace()
           
 int next()
           
 int nextTag()
           
 void require(int event, String uri, String local)
           
 boolean standaloneSet()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EventToStaxBridge

public EventToStaxBridge(EventIterator provider,
                         PipelineConfiguration pipe)
Create a EventToStaxBridge instance, which wraps a Saxon EventIterator as a Stax XMLStreamReader

Parameters:
provider - the Saxon EventIterator from which the events will be read. This must return a fully decomposed event stream, that is, document and element nodes must be presented as separate events for the start, content, and end.
pipe - the PipelineConfiguration
Method Detail

getNamePool

public NamePool getNamePool()
Get the NamePool used by this bridge to translate integer name codes to QNames

Returns:
the name pool in use

getAttributeCount

public int getAttributeCount()
Specified by:
getAttributeCount in interface javax.xml.stream.XMLStreamReader

isAttributeSpecified

public boolean isAttributeSpecified(int i)
Specified by:
isAttributeSpecified in interface javax.xml.stream.XMLStreamReader

getAttributeName

public QName getAttributeName(int i)
Specified by:
getAttributeName in interface javax.xml.stream.XMLStreamReader

getAttributeLocalName

public String getAttributeLocalName(int i)
Specified by:
getAttributeLocalName in interface javax.xml.stream.XMLStreamReader

getAttributeNamespace

public String getAttributeNamespace(int i)
Specified by:
getAttributeNamespace in interface javax.xml.stream.XMLStreamReader

getAttributePrefix

public String getAttributePrefix(int i)
Specified by:
getAttributePrefix in interface javax.xml.stream.XMLStreamReader

getAttributeType

public String getAttributeType(int i)
Specified by:
getAttributeType in interface javax.xml.stream.XMLStreamReader

getAttributeValue

public String getAttributeValue(int i)
Specified by:
getAttributeValue in interface javax.xml.stream.XMLStreamReader

getAttributeValue

public String getAttributeValue(String uri,
                                String local)
Specified by:
getAttributeValue in interface javax.xml.stream.XMLStreamReader

getEventType

public int getEventType()
Specified by:
getEventType in interface javax.xml.stream.XMLStreamReader

getNamespaceCount

public int getNamespaceCount()
Specified by:
getNamespaceCount in interface javax.xml.stream.XMLStreamReader

getText

public String getText()
Specified by:
getText in interface javax.xml.stream.XMLStreamReader

getTextLength

public int getTextLength()
Specified by:
getTextLength in interface javax.xml.stream.XMLStreamReader

getTextStart

public int getTextStart()
Specified by:
getTextStart in interface javax.xml.stream.XMLStreamReader

getTextCharacters

public char[] getTextCharacters()
Specified by:
getTextCharacters in interface javax.xml.stream.XMLStreamReader

getTextCharacters

public int getTextCharacters(int sourceStart,
                             char[] target,
                             int targetStart,
                             int length)
                      throws javax.xml.stream.XMLStreamException
Specified by:
getTextCharacters in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

next

public int next()
         throws javax.xml.stream.XMLStreamException
Specified by:
next in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

nextTag

public int nextTag()
            throws javax.xml.stream.XMLStreamException
Specified by:
nextTag in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

close

public void close()
           throws javax.xml.stream.XMLStreamException
Specified by:
close in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

hasName

public boolean hasName()
Specified by:
hasName in interface javax.xml.stream.XMLStreamReader

hasNext

public boolean hasNext()
                throws javax.xml.stream.XMLStreamException
Specified by:
hasNext in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

hasText

public boolean hasText()
Specified by:
hasText in interface javax.xml.stream.XMLStreamReader

isCharacters

public boolean isCharacters()
Specified by:
isCharacters in interface javax.xml.stream.XMLStreamReader

isEndElement

public boolean isEndElement()
Specified by:
isEndElement in interface javax.xml.stream.XMLStreamReader

isStandalone

public boolean isStandalone()
Specified by:
isStandalone in interface javax.xml.stream.XMLStreamReader

isStartElement

public boolean isStartElement()
Specified by:
isStartElement in interface javax.xml.stream.XMLStreamReader

isWhiteSpace

public boolean isWhiteSpace()
Specified by:
isWhiteSpace in interface javax.xml.stream.XMLStreamReader

standaloneSet

public boolean standaloneSet()
Specified by:
standaloneSet in interface javax.xml.stream.XMLStreamReader

getCharacterEncodingScheme

public String getCharacterEncodingScheme()
Specified by:
getCharacterEncodingScheme in interface javax.xml.stream.XMLStreamReader

getElementText

public String getElementText()
                      throws javax.xml.stream.XMLStreamException
Specified by:
getElementText in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

getEncoding

public String getEncoding()
Specified by:
getEncoding in interface javax.xml.stream.XMLStreamReader

getLocalName

public String getLocalName()
Specified by:
getLocalName in interface javax.xml.stream.XMLStreamReader

getNamespaceURI

public String getNamespaceURI()
Specified by:
getNamespaceURI in interface javax.xml.stream.XMLStreamReader

getPIData

public String getPIData()
Specified by:
getPIData in interface javax.xml.stream.XMLStreamReader

getPITarget

public String getPITarget()
Specified by:
getPITarget in interface javax.xml.stream.XMLStreamReader

getPrefix

public String getPrefix()
Specified by:
getPrefix in interface javax.xml.stream.XMLStreamReader

getVersion

public String getVersion()
Specified by:
getVersion in interface javax.xml.stream.XMLStreamReader

getNamespacePrefix

public String getNamespacePrefix(int i)
Specified by:
getNamespacePrefix in interface javax.xml.stream.XMLStreamReader

getNamespaceURI

public String getNamespaceURI(int i)
Specified by:
getNamespaceURI in interface javax.xml.stream.XMLStreamReader

getNamespaceContext

public NamespaceContext getNamespaceContext()
Specified by:
getNamespaceContext in interface javax.xml.stream.XMLStreamReader

getName

public QName getName()
Specified by:
getName in interface javax.xml.stream.XMLStreamReader

getLocation

public javax.xml.stream.Location getLocation()
Specified by:
getLocation in interface javax.xml.stream.XMLStreamReader

getProperty

public Object getProperty(String s)
                   throws IllegalArgumentException
Specified by:
getProperty in interface javax.xml.stream.XMLStreamReader
Throws:
IllegalArgumentException

require

public void require(int event,
                    String uri,
                    String local)
             throws javax.xml.stream.XMLStreamException
Specified by:
require in interface javax.xml.stream.XMLStreamReader
Throws:
javax.xml.stream.XMLStreamException

getNamespaceURI

public String getNamespaceURI(String prefix)
Specified by:
getNamespaceURI in interface javax.xml.stream.XMLStreamReader

getProvider

public EventIterator getProvider()
Get the underlying event stream



Copyright (c) Saxonica Limited. All rights reserved.