net.sf.saxon.event
Class ImplicitResultChecker

java.lang.Object
  extended by net.sf.saxon.event.SequenceReceiver
      extended by net.sf.saxon.event.ProxyReceiver
          extended by net.sf.saxon.event.ImplicitResultChecker
All Implemented Interfaces:
Result, Receiver

public class ImplicitResultChecker
extends ProxyReceiver

This filter is inserted into the serializer pipeline when serializing an implicit XSLT result tree, that is, one that is created without use of xsl:result-document. Its main purpose is to check, if and only if the result destination is actually written to, that it does not conflict with an explicit result destination with the same URI. It also ensures that the output destination is opened before it is first written to.


Field Summary
 
Fields inherited from class net.sf.saxon.event.ProxyReceiver
nextReceiver
 
Fields inherited from class net.sf.saxon.event.SequenceReceiver
pipelineConfiguration, previousAtomic, systemId
 
Fields inherited from interface javax.xml.transform.Result
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING
 
Constructor Summary
ImplicitResultChecker(Receiver next, Controller controller)
          Create an ImplicitResultChecker.
 
Method Summary
 void characters(CharSequence chars, int locationId, int properties)
          Character data
 void close()
          End of output.
 void comment(CharSequence chars, int locationId, int properties)
          Output a comment
 void open()
          Start of event stream
 void processingInstruction(String target, CharSequence data, int locationId, int properties)
          Processing Instruction
 void startDocument(int properties)
          Start of a document node.
 void startElement(int nameCode, int typeCode, int locationId, int properties)
          Notify the start of an element
 
Methods inherited from class net.sf.saxon.event.ProxyReceiver
append, attribute, endDocument, endElement, getConfiguration, getDocumentLocator, getNamePool, getUnderlyingReceiver, namespace, setPipelineConfiguration, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, usesTypeAnnotations
 
Methods inherited from class net.sf.saxon.event.SequenceReceiver
getPipelineConfiguration, getSystemId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ImplicitResultChecker

public ImplicitResultChecker(Receiver next,
                             Controller controller)
Create an ImplicitResultChecker. This is a filter on the output pipeline.

Parameters:
next - the next receiver on the pipeline
controller - the controller of the XSLT transformation
Method Detail

open

public void open()
          throws XPathException
Description copied from class: ProxyReceiver
Start of event stream

Specified by:
open in interface Receiver
Overrides:
open in class ProxyReceiver
Throws:
XPathException

startDocument

public void startDocument(int properties)
                   throws XPathException
Description copied from class: ProxyReceiver
Start of a document node.

Specified by:
startDocument in interface Receiver
Overrides:
startDocument in class ProxyReceiver
Parameters:
properties - bit-significant integer indicating properties of the document node. The definitions of the bits are in class ReceiverOptions
Throws:
XPathException

startElement

public void startElement(int nameCode,
                         int typeCode,
                         int locationId,
                         int properties)
                  throws XPathException
Description copied from class: ProxyReceiver
Notify the start of an element

Specified by:
startElement in interface Receiver
Overrides:
startElement in class ProxyReceiver
Parameters:
nameCode - integer code identifying the name of the element within the name pool.
typeCode - integer code identifying the element's type within the name pool.
locationId - an integer which can be interpreted using a LocationProvider to return information such as line number and system ID. If no location information is available, the value zero is supplied.
properties - properties of the element node
Throws:
XPathException

characters

public void characters(CharSequence chars,
                       int locationId,
                       int properties)
                throws XPathException
Description copied from class: ProxyReceiver
Character data

Specified by:
characters in interface Receiver
Overrides:
characters in class ProxyReceiver
Parameters:
chars - The characters
locationId - an integer which can be interpreted using a LocationProvider to return information such as line number and system ID. If no location information is available, the value zero is supplied.
properties - Bit significant value. The following bits are defined:
DISABLE_ESCAPING
Disable escaping for this text node
USE_CDATA
Output as a CDATA section
Throws:
XPathException

processingInstruction

public void processingInstruction(String target,
                                  CharSequence data,
                                  int locationId,
                                  int properties)
                           throws XPathException
Description copied from class: ProxyReceiver
Processing Instruction

Specified by:
processingInstruction in interface Receiver
Overrides:
processingInstruction in class ProxyReceiver
Parameters:
target - The PI name. This must be a legal name (it will not be checked).
data - The data portion of the processing instruction
locationId - an integer which can be interpreted using a LocationProvider to return information such as line number and system ID. If no location information is available, the value zero is supplied.
properties - Additional information about the PI. The following bits are defined:
CHECKED
Data is known to be legal (e.g. doesn't contain "?>")
Throws:
XPathException

comment

public void comment(CharSequence chars,
                    int locationId,
                    int properties)
             throws XPathException
Description copied from class: ProxyReceiver
Output a comment

Specified by:
comment in interface Receiver
Overrides:
comment in class ProxyReceiver
Parameters:
chars - The content of the comment
locationId - an integer which can be interpreted using a LocationProvider to return information such as line number and system ID. If no location information is available, the value zero is supplied.
properties - Additional information about the comment. The following bits are defined:
CHECKED
Comment is known to be legal (e.g. doesn't contain "--")
Throws:
XPathException

close

public void close()
           throws XPathException
Description copied from class: ProxyReceiver
End of output. Note that closing this receiver also closes the rest of the pipeline.

Specified by:
close in interface Receiver
Overrides:
close in class ProxyReceiver
Throws:
XPathException


Copyright (c) Saxonica Limited. All rights reserved.