## com.icl.saxon.om
Class Stripper

    java.lang.Object
      |
      +--com.icl.saxon.output.Emitter
            |
            +--com.icl.saxon.output.ProxyEmitter
                  |
                  +--com.icl.saxon.om.Stripper

All Implemented Interfaces:
  javax.xml.transform.Result

Direct Known Subclasses:
  StylesheetStripper

public class Stripper
extends ProxyEmitter

The Stripper class maintains details of which elements need to be stripped. The code is written to act as a SAX filter to do the stripping.

Field Summary

Fields inherited from class com.icl.saxon.output.ProxyEmitter
`baseEmitter, outputProperties`

Fields inherited from class com.icl.saxon.output.Emitter
`locator, namePool, outputStream, systemId, writer`

Fields inherited from interface javax.xml.transform.Result
`PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING`

Constructor Summary
`protected` `Stripper()` Default constructor for use in subclasses
`` `Stripper(Mode stripperRules)` create a Stripper and initialise variables

Method Summary
`void` `characters(char[] ch, int start, int length)` Callback interface for SAX: not for application use
`void` `endElement(int nameCode)` Callback interface for SAX: not for application use
`boolean` `getPreserveAll()` Determine if all whitespace is to be preserved (in this case, no further testing is needed)
`boolean` `getStripAll()` Determine if all whitespace is to be stripped (in this case, no further testing is needed)
`boolean` `isSpacePreserving(int nameCode)` Decide whether an element is in the set of white-space preserving element types
`void` `setController(Controller controller)` Set the Controller to be used
`void` `setPreserveAll()` Specify that all whitespace nodes are to be preserved
`void` `setStripAll()` Specify that all whitespace nodes are to be stripped
`void` `startDocument()` Callback interface for SAX: not for application use
`void` `startElement(int nameCode, org.xml.sax.Attributes atts, int[] namespaces, int nscount)` Callback interface for SAX: not for application use

Methods inherited from class com.icl.saxon.output.ProxyEmitter
`comment, endDocument, processingInstruction, setDocumentLocator, setEscaping, setNamePool, setOutputProperties, setUnderlyingEmitter, setUnparsedEntity, setWriter`

Methods inherited from class com.icl.saxon.output.Emitter
`getNamePool, getOutputProperties, getOutputStream, getSystemId, getWriter, makeEmitter, setOutputStream, setSystemId, usesWriter`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Stripper

    protected Stripper()

  Default constructor for use in subclasses

### Stripper

    public Stripper(Mode stripperRules)

  create a Stripper and initialise variables

Method Detail

### setPreserveAll

    public void setPreserveAll()

  Specify that all whitespace nodes are to be preserved

### getPreserveAll

    public boolean getPreserveAll()

  Determine if all whitespace is to be preserved (in this case, no further testing is needed)

### setStripAll

    public void setStripAll()

  Specify that all whitespace nodes are to be stripped

### getStripAll

    public boolean getStripAll()

  Determine if all whitespace is to be stripped (in this case, no further testing is needed)

### setController

    public void setController(Controller controller)

  Set the Controller to be used

### isSpacePreserving

    public boolean isSpacePreserving(int nameCode)

  Decide whether an element is in the set of white-space preserving element types

  Returns:
    true if the element is in the set of white-space preserving element types

### startDocument

    public void startDocument()
                       throws javax.xml.transform.TransformerException

  Callback interface for SAX: not for application use

  Overrides:
    `startDocument` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### startElement

    public void startElement(int nameCode,
                             org.xml.sax.Attributes atts,
                             int[] namespaces,
                             int nscount)
                      throws javax.xml.transform.TransformerException

  Callback interface for SAX: not for application use

  Overrides:
    `startElement` in class `ProxyEmitter`
  Parameters:
    `namespaces` - Array of namespace codes identifying the namespace prefix/uri pairs associated with this element
    `nscount` - Number of significant entries within namespaces array
    `javax.xml.transform.TransformerException`

### endElement

    public void endElement(int nameCode)
                    throws javax.xml.transform.TransformerException

  Callback interface for SAX: not for application use

  Overrides:
    `endElement` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`

### characters

    public void characters(char[] ch,
                           int start,
                           int length)
                    throws javax.xml.transform.TransformerException

  Callback interface for SAX: not for application use

  Overrides:
    `characters` in class `ProxyEmitter`
    `javax.xml.transform.TransformerException`