DataChannelHandler (cayenne-doc: Cayenne Documentation 5.0-M2 API)
Description: declaration: package: org.apache.cayenne.configuration.xml, class: DataChannelHandler

# Class DataChannelHandler

java.lang.Object
org.xml.sax.helpers.DefaultHandler
org.apache.cayenne.configuration.xml.SAXNestedTagHandler
org.apache.cayenne.configuration.xml.NamespaceAwareNestedTagHandler
org.apache.cayenne.configuration.xml.VersionAwareHandler
org.apache.cayenne.configuration.xml.DataChannelHandler

All Implemented Interfaces:
  `ContentHandler, DTDHandler, EntityResolver, ErrorHandler`

public final class DataChannelHandler extends VersionAwareHandler

Since:
  4.1

- ## Field Summary

  ### Fields inherited from class VersionAwareHandler

  `rootTag`
  Modifier and Type
  Field
  Description
  `protected String`
  `rootTag`

  ### Fields inherited from class NamespaceAwareNestedTagHandler

  `allowAllNamespaces, targetNamespace`
  Modifier and Type
  Field
  Description
  `protected boolean`
  `allowAllNamespaces`
  `protected String`
  `targetNamespace`

  ### Fields inherited from class SAXNestedTagHandler

  `loaderContext, locator, parentHandler`
  Modifier and Type
  Field
  Description
  `protected LoaderContext`
  `loaderContext`
  `protected Locator`
  `locator`
  `protected ContentHandler`
  `parentHandler`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DataChannelHandler(XMLDataChannelDescriptorLoader xmlDataChannelDescriptorLoader, DataChannelDescriptor dataChannelDescriptor, LoaderContext loaderContext)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected ContentHandler`
  `createChildTagHandler(String namespaceURI, String localName, String name, Attributes attributes)`
  This method should be used to create nested handlers to process children elements.

  ### Methods inherited from class VersionAwareHandler

  `processElement, validateNamespace, validateVersion`
  Modifier and Type
  Method
  Description
  `protected boolean`
  `processElement(String namespaceURI, String localName, Attributes attributes)`
  Main method to process XML content.
  `protected void`
  `validateNamespace(String realNamespace)`
  `protected void`
  `validateVersion(Attributes attributes, String[] supportedVersions)`

  ### Methods inherited from class NamespaceAwareNestedTagHandler

  `characters, endElement, processCharData, setAllowAllNamespaces, setTargetNamespace, startElement`
  Modifier and Type
  Method
  Description
  `void`
  `characters(char[] ch, int start, int length)`
  `void`
  `endElement(String namespaceURI, String localName, String qName)`
  `protected boolean`
  `processCharData(String localName, String data)`
  `void`
  `setAllowAllNamespaces(boolean allowAllNamespaces)`
  `void`
  `setTargetNamespace(String targetNamespace)`
  `final void`
  `startElement(String namespaceURI, String localName, String qName, Attributes attributes)`
  This method directly called by SAX parser, do not override it directly, use `SAXNestedTagHandler.processElement(String, String, Attributes)` method instead to process content.

  ### Methods inherited from class SAXNestedTagHandler

  `beforeScopeEnd, getParentHandler, setDocumentLocator, stop, unexpectedTagMessage`
  Modifier and Type
  Method
  Description
  `protected void`
  `beforeScopeEnd()`
  Callback method that is called before this handler pushed out of parsers stack.
  `ContentHandler`
  `getParentHandler()`
  `void`
  `setDocumentLocator(Locator locator)`
  `protected void`
  `stop()`
  `protected String`
  `unexpectedTagMessage(String tagFound, String... tagsExpected)`

  ### Methods inherited from class DefaultHandler

  `endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface ContentHandler

  `declaration`

- ## Constructor Details

  - ### DataChannelHandler

    public DataChannelHandler(XMLDataChannelDescriptorLoader xmlDataChannelDescriptorLoader, DataChannelDescriptor dataChannelDescriptor, LoaderContext loaderContext)

- ## Method Details

  - ### createChildTagHandler

    protected ContentHandler createChildTagHandler(String namespaceURI, String localName, String name, Attributes attributes)
    Description copied from class: `SAXNestedTagHandler`
    This method should be used to create nested handlers to process children elements. This method should never return `null`.
    Overrides:
      `createChildTagHandler` in class `NamespaceAwareNestedTagHandler`
    Parameters:
      `namespaceURI` - namespace for tag
      `localName` - tag local name (i.e. w/o namespace prefix)
      `name` - tag full name (i.e. with namespace prefix)
      `attributes` - tag attributes
    Returns:
      new handler to process child tag