Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.opensymphony.xwork2.util.location
Class LocationAttributes.Pipe

    java.lang.Object
      com.opensymphony.xwork2.util.location.LocationAttributes.Pipe

All Implemented Interfaces:
  ContentHandler

Enclosing class:
  LocationAttributes

    public static class LocationAttributes.Pipe

extends Object
implements ContentHandler

A SAX filter that adds the information available from the `Locator` as attributes. The purpose of having location as attributes is to allow this information to survive transformations of the document (an XSL could copy these attributes over) or conversion of SAX events to a DOM.

The location is added as 3 attributes in a specific namespace to each element.

     <root xmlns:loc="http://opensymphony.com/xwork/location"
           loc:src="file://path/to/file.xml"
           loc:line="1" loc:column="1">
       <foo loc:src="file://path/to/file.xml" loc:line="2" loc:column="3"/>
     </root>

Note: Although this adds a lot of information to the serialized form of the document, the overhead in SAX events is not that big, as attribute names are interned, and all `src` attributes point to the same string.

See Also:
  `LocationAttributes`

Field Summary
`private Locator` | `locator`
`private ContentHandler` | `nextHandler`

Constructor Summary
`LocationAttributes.Pipe()` Create a filter.
`LocationAttributes.Pipe(ContentHandler next)` Create a filter that is chained to another handler.

Method Summary
`void` | `characters(char[] arg0, int arg1, int arg2)`
`void` | `endDocument()`
`void` | `endElement(String arg0, String arg1, String arg2)`
`void` | `endPrefixMapping(String arg0)`
`void` | `ignorableWhitespace(char[] arg0, int arg1, int arg2)`
`void` | `processingInstruction(String arg0, String arg1)`
`void` | `setDocumentLocator(Locator locator)`
`void` | `skippedEntity(String arg0)`
`void` | `startDocument()`
`void` | `startElement(String uri, String loc, String raw, Attributes attrs)`
`void` | `startPrefixMapping(String arg0, String arg1)`

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

Field Detail

### locator

    private Locator locator

### nextHandler

    private ContentHandler nextHandler

Constructor Detail

### LocationAttributes.Pipe

    public LocationAttributes.Pipe()

  Create a filter. It has to be chained to another handler to be really useful.

### LocationAttributes.Pipe

    public LocationAttributes.Pipe(ContentHandler next)

  Create a filter that is chained to another handler.

  Parameters:
    `next` - the next handler in the chain.

Method Detail

### setDocumentLocator

    public void setDocumentLocator(Locator locator)

  Specified by:
    `setDocumentLocator` in interface `ContentHandler`

### startDocument

    public void startDocument()
                       throws SAXException

  Specified by:
    `startDocument` in interface `ContentHandler`
  Throws:
    `SAXException`

### endDocument

    public void endDocument()
                     throws SAXException

  Specified by:
    `endDocument` in interface `ContentHandler`
  Throws:
    `SAXException`

### startElement

    public void startElement(String uri,
                             String loc,
                             String raw,
                             Attributes attrs)
                      throws SAXException

  Specified by:
    `startElement` in interface `ContentHandler`
  Throws:
    `SAXException`

### endElement

    public void endElement(String arg0,
                           String arg1,
                           String arg2)
                    throws SAXException

  Specified by:
    `endElement` in interface `ContentHandler`
  Throws:
    `SAXException`

### startPrefixMapping

    public void startPrefixMapping(String arg0,
                                   String arg1)
                            throws SAXException

  Specified by:
    `startPrefixMapping` in interface `ContentHandler`
  Throws:
    `SAXException`

### endPrefixMapping

    public void endPrefixMapping(String arg0)
                          throws SAXException

  Specified by:
    `endPrefixMapping` in interface `ContentHandler`
  Throws:
    `SAXException`

### characters

    public void characters(char[] arg0,
                           int arg1,
                           int arg2)
                    throws SAXException

  Specified by:
    `characters` in interface `ContentHandler`
  Throws:
    `SAXException`

### ignorableWhitespace

    public void ignorableWhitespace(char[] arg0,
                                    int arg1,
                                    int arg2)
                             throws SAXException

  Specified by:
    `ignorableWhitespace` in interface `ContentHandler`
  Throws:
    `SAXException`

### processingInstruction

    public void processingInstruction(String arg0,
                                      String arg1)
                               throws SAXException

  Specified by:
    `processingInstruction` in interface `ContentHandler`
  Throws:
    `SAXException`

### skippedEntity

    public void skippedEntity(String arg0)
                       throws SAXException

  Specified by:
    `skippedEntity` in interface `ContentHandler`
  Throws:
    `SAXException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.