Package org.apache.ivy.osgi.util
Class DelegatingHandler
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- org.apache.ivy.osgi.util.DelegatingHandler
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ErrorHandler
- Direct Known Subclasses:
EclipseUpdateSiteParser.CategoryHandler,EclipseUpdateSiteParser.FeatureHandler,EclipseUpdateSiteParser.SiteHandler,FeatureParser.CopyrightHandler,FeatureParser.DescriptionHandler,FeatureParser.FeatureHandler,FeatureParser.ImportHandler,FeatureParser.LicenseHandler,FeatureParser.PluginHandler,FeatureParser.RequiresHandler,OBRXMLParser.AbstractRequirementHandler,OBRXMLParser.CapabilityHandler,OBRXMLParser.CapabilityPropertyHandler,OBRXMLParser.RepositoryHandler,OBRXMLParser.ResourceDescriptionHandler,OBRXMLParser.ResourceDocumentationHandler,OBRXMLParser.ResourceHandler,OBRXMLParser.ResourceLicenseHandler,OBRXMLParser.ResourceSizeHandler,OBRXMLParser.ResourceSourceHandler,P2ArtifactParser.ArtifactHandler,P2ArtifactParser.ArtifactsHandler,P2ArtifactParser.MappingsHandler,P2ArtifactParser.RepositoryHandler,P2ArtifactParser.RuleHandler,P2CompositeParser.ChildHandler,P2CompositeParser.ChildrenHandler,P2CompositeParser.RepositoryHandler,P2MetadataParser.AbstractRequirementHandler,P2MetadataParser.ArtifactHandler,P2MetadataParser.ArtifactsHandler,P2MetadataParser.FilterHandler,P2MetadataParser.InstructionHandler,P2MetadataParser.InstructionsHandler,P2MetadataParser.ProvidedHandler,P2MetadataParser.ProvidesHandler,P2MetadataParser.ReferencesHandler,P2MetadataParser.RepositoryHandler,P2MetadataParser.RepositoryReferenceHandler,P2MetadataParser.RequiredHandler,P2MetadataParser.TouchpointDataHandler,P2MetadataParser.UnitHandler,P2MetadataParser.UnitsHandler,PropertiesParser.PropertiesHandler,PropertiesParser.PropertyHandler,UpdateSiteDigestParser.DigestHandler
public class DelegatingHandler extends org.xml.sax.helpers.DefaultHandler implements org.xml.sax.DTDHandler, org.xml.sax.ContentHandler, org.xml.sax.ErrorHandler
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDelegatingHandler.ChildElementHandler<DH extends DelegatingHandler>private static interfaceDelegatingHandler.SkipOnErrorCallback
-
Field Summary
Fields Modifier and Type Field Description private booleanbufferingCharprivate java.lang.StringBuildercharBufferprivate java.util.Map<java.lang.String,DelegatingHandler.ChildElementHandler<?>>childHandlerMappingprivate DelegatingHandlerdelegate(package private) static java.lang.StringFALSEprivate org.xml.sax.Locatorlocator(package private) DelegatingHandlerparentprivate java.util.Map<java.lang.String,DelegatingHandler>saxHandlerMappingprivate booleanskipprivate booleanskipOnErrorprivate booleanstartedprivate java.lang.StringtagName(package private) static java.lang.StringTRUE
-
Constructor Summary
Constructors Constructor Description DelegatingHandler(java.lang.String name)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected <DH extends DelegatingHandler>
voidaddChild(DH saxHandler, DelegatingHandler.ChildElementHandler<DH> elementHandler)voidcharacters(char[] ch, int start, int length)protected voiddoCharacters(char[] ch, int start, int length)protected voiddoEndDocument()By default do nothing.protected voiddoEndElement(java.lang.String uri, java.lang.String localName, java.lang.String name)By default do nothing.protected voiddoEndPrefixMapping(java.lang.String prefix)By default do nothing.protected voiddoError(org.xml.sax.SAXParseException exception)By default do nothing.protected voiddoFatalError(org.xml.sax.SAXParseException exception)By default do nothing.protected voiddoIgnorableWhitespace(char[] ch, int start, int length)By default do nothingprotected voiddoNotationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)By default do nothing.protected voiddoProcessingInstruction(java.lang.String target, java.lang.String data)By default do nothingprotected voiddoSkippedEntity(java.lang.String name)By default do nothing.protected voiddoStartDocument()By default do nothing.protected voiddoStartElement(java.lang.String uri, java.lang.String localName, java.lang.String name, org.xml.sax.Attributes atts)By default do nothing.protected voiddoStartPrefixMapping(java.lang.String prefix, java.lang.String uri)By default do nothing.protected voiddoUnparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)By default do nothing.protected voiddoWarning(org.xml.sax.SAXParseException exception)By default do nothing.voidendDocument()voidendElement(java.lang.String uri, java.lang.String localName, java.lang.String n)voidendPrefixMapping(java.lang.String prefix)voiderror(org.xml.sax.SAXParseException exception)voidfatalError(org.xml.sax.SAXParseException exception)java.lang.StringgetBufferedChars()protected java.lang.StringgetCurrentElementIdentifier()Return an sort of identifier of the current element being parsed.protected static java.lang.StringgetLocation(org.xml.sax.Locator locator)org.xml.sax.LocatorgetLocator()java.lang.StringgetName()protected java.lang.StringgetOptionalAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.String defaultValue)protected java.lang.BooleangetOptionalBooleanAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Boolean defaultValue)protected java.lang.IntegergetOptionalIntAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Integer defaultValue)protected java.lang.LonggetOptionalLongAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Long defaultValue)DelegatingHandlergetParent()protected java.lang.StringgetRequiredAttribute(org.xml.sax.Attributes atts, java.lang.String name)protected booleangetRequiredBooleanAttribute(org.xml.sax.Attributes atts, java.lang.String name)protected intgetRequiredIntAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Integer logLevel)protected longgetRequiredLongAttribute(org.xml.sax.Attributes atts, java.lang.String name)protected voidhandleAttributes(org.xml.sax.Attributes atts)Called when the expected node is achieved; nothing to do by default.voidignorableWhitespace(char[] ch, int start, int length)booleanisBufferingChar()protected voidlog(int logLevel, java.lang.String message)protected voidlog(int logLevel, java.lang.String message, java.lang.Throwable t)voidnotationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)private booleanparseBoolean(java.lang.String name, java.lang.String value)private intparseInt(java.lang.String name, java.lang.String value)private longparseLong(java.lang.String name, java.lang.String value)voidprocessingInstruction(java.lang.String target, java.lang.String data)voidsetBufferingChar(boolean bufferingChar)voidsetDocumentLocator(org.xml.sax.Locator locator)voidsetSkipOnError(boolean skipOnError)voidskip()private voidskipOnError(DelegatingHandler.SkipOnErrorCallback callback)private voidskipOnError(DelegatingHandler currentHandler, java.lang.Class<? extends DelegatingHandler> handlerClassToSkip, java.lang.String message)voidskippedEntity(java.lang.String name)voidstartDocument()voidstartElement(java.lang.String uri, java.lang.String localName, java.lang.String n, org.xml.sax.Attributes atts)voidstartPrefixMapping(java.lang.String prefix, java.lang.String uri)protected voidstopDelegating()voidunparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)voidwarning(org.xml.sax.SAXParseException exception)
-
-
-
Field Detail
-
delegate
private DelegatingHandler delegate
-
parent
DelegatingHandler parent
-
saxHandlerMapping
private final java.util.Map<java.lang.String,DelegatingHandler> saxHandlerMapping
-
childHandlerMapping
private final java.util.Map<java.lang.String,DelegatingHandler.ChildElementHandler<?>> childHandlerMapping
-
tagName
private final java.lang.String tagName
-
started
private boolean started
-
skip
private boolean skip
-
skipOnError
private boolean skipOnError
-
charBuffer
private java.lang.StringBuilder charBuffer
-
bufferingChar
private boolean bufferingChar
-
locator
private org.xml.sax.Locator locator
-
TRUE
static final java.lang.String TRUE
-
FALSE
static final java.lang.String FALSE
-
-
Method Detail
-
addChild
protected <DH extends DelegatingHandler> void addChild(DH saxHandler, DelegatingHandler.ChildElementHandler<DH> elementHandler)
-
getName
public java.lang.String getName()
-
getParent
public DelegatingHandler getParent()
-
setBufferingChar
public void setBufferingChar(boolean bufferingChar)
-
setSkipOnError
public void setSkipOnError(boolean skipOnError)
-
isBufferingChar
public boolean isBufferingChar()
-
getBufferedChars
public java.lang.String getBufferedChars()
-
setDocumentLocator
public void setDocumentLocator(org.xml.sax.Locator locator)
- Specified by:
setDocumentLocatorin interfaceorg.xml.sax.ContentHandler- Overrides:
setDocumentLocatorin classorg.xml.sax.helpers.DefaultHandler
-
getLocator
public org.xml.sax.Locator getLocator()
-
getCurrentElementIdentifier
protected java.lang.String getCurrentElementIdentifier()
Return an sort of identifier of the current element being parsed. It will only be used for logging purpose.- Returns:
- an empty string by default
-
skip
public void skip()
-
stopDelegating
protected void stopDelegating()
-
skipOnError
private void skipOnError(DelegatingHandler.SkipOnErrorCallback callback) throws org.xml.sax.SAXException
- Throws:
org.xml.sax.SAXException
-
startDocument
public final void startDocument() throws org.xml.sax.SAXException- Specified by:
startDocumentin interfaceorg.xml.sax.ContentHandler- Overrides:
startDocumentin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doStartDocument
protected void doStartDocument() throws org.xml.sax.SAXExceptionBy default do nothing.- Throws:
org.xml.sax.SAXException- API told me so
-
endDocument
public final void endDocument() throws org.xml.sax.SAXException- Specified by:
endDocumentin interfaceorg.xml.sax.ContentHandler- Overrides:
endDocumentin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doEndDocument
protected void doEndDocument() throws org.xml.sax.SAXExceptionBy default do nothing.- Throws:
org.xml.sax.SAXException- API told me so
-
startElement
public final void startElement(java.lang.String uri, java.lang.String localName, java.lang.String n, org.xml.sax.Attributes atts) throws org.xml.sax.SAXException- Specified by:
startElementin interfaceorg.xml.sax.ContentHandler- Overrides:
startElementin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
handleAttributes
protected void handleAttributes(org.xml.sax.Attributes atts) throws org.xml.sax.SAXExceptionCalled when the expected node is achieved; nothing to do by default.- Parameters:
atts- the xml attributes attached to the expected node- Throws:
org.xml.sax.SAXException- in case the parsing should be completely stopped
-
doStartElement
protected void doStartElement(java.lang.String uri, java.lang.String localName, java.lang.String name, org.xml.sax.Attributes atts) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
uri- StringlocalName- Stringname- Stringatts- Attributes- Throws:
org.xml.sax.SAXException- API told me so
-
endElement
public final void endElement(java.lang.String uri, java.lang.String localName, java.lang.String n) throws org.xml.sax.SAXException- Specified by:
endElementin interfaceorg.xml.sax.ContentHandler- Overrides:
endElementin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doEndElement
protected void doEndElement(java.lang.String uri, java.lang.String localName, java.lang.String name) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
uri- StringlocalName- Stringname- String- Throws:
org.xml.sax.SAXException- API told me so
-
characters
public final void characters(char[] ch, int start, int length) throws org.xml.sax.SAXException- Specified by:
charactersin interfaceorg.xml.sax.ContentHandler- Overrides:
charactersin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doCharacters
protected void doCharacters(char[] ch, int start, int length) throws org.xml.sax.SAXException- Parameters:
ch- char[]start- intlength- int- Throws:
org.xml.sax.SAXException- if something goes wrong
-
startPrefixMapping
public final void startPrefixMapping(java.lang.String prefix, java.lang.String uri) throws org.xml.sax.SAXException- Specified by:
startPrefixMappingin interfaceorg.xml.sax.ContentHandler- Overrides:
startPrefixMappingin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doStartPrefixMapping
protected void doStartPrefixMapping(java.lang.String prefix, java.lang.String uri) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
prefix- Stringuri- String- Throws:
org.xml.sax.SAXException- API told me so
-
endPrefixMapping
public final void endPrefixMapping(java.lang.String prefix) throws org.xml.sax.SAXException- Specified by:
endPrefixMappingin interfaceorg.xml.sax.ContentHandler- Overrides:
endPrefixMappingin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doEndPrefixMapping
protected void doEndPrefixMapping(java.lang.String prefix) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
prefix- String- Throws:
org.xml.sax.SAXException- API told me so
-
ignorableWhitespace
public final void ignorableWhitespace(char[] ch, int start, int length) throws org.xml.sax.SAXException- Specified by:
ignorableWhitespacein interfaceorg.xml.sax.ContentHandler- Overrides:
ignorableWhitespacein classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doIgnorableWhitespace
protected void doIgnorableWhitespace(char[] ch, int start, int length) throws org.xml.sax.SAXExceptionBy default do nothing- Parameters:
ch- char[]start- intlength- int- Throws:
org.xml.sax.SAXException- API told me so
-
notationDecl
public final void notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId) throws org.xml.sax.SAXException- Specified by:
notationDeclin interfaceorg.xml.sax.DTDHandler- Overrides:
notationDeclin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doNotationDecl
protected void doNotationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
name- StringpublicId- StringsystemId- String- Throws:
org.xml.sax.SAXException- API told me so
-
processingInstruction
public final void processingInstruction(java.lang.String target, java.lang.String data) throws org.xml.sax.SAXException- Specified by:
processingInstructionin interfaceorg.xml.sax.ContentHandler- Overrides:
processingInstructionin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doProcessingInstruction
protected void doProcessingInstruction(java.lang.String target, java.lang.String data) throws org.xml.sax.SAXExceptionBy default do nothing- Parameters:
target- Stringdata- String- Throws:
org.xml.sax.SAXException- API told me so
-
skippedEntity
public final void skippedEntity(java.lang.String name) throws org.xml.sax.SAXException- Specified by:
skippedEntityin interfaceorg.xml.sax.ContentHandler- Overrides:
skippedEntityin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doSkippedEntity
protected void doSkippedEntity(java.lang.String name) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
name- String- Throws:
org.xml.sax.SAXException- API told me so
-
unparsedEntityDecl
public final void unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName) throws org.xml.sax.SAXException- Specified by:
unparsedEntityDeclin interfaceorg.xml.sax.DTDHandler- Overrides:
unparsedEntityDeclin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doUnparsedEntityDecl
protected void doUnparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
name- StringpublicId- StringsystemId- StringnotationName- String- Throws:
org.xml.sax.SAXException- API told me so
-
warning
public final void warning(org.xml.sax.SAXParseException exception) throws org.xml.sax.SAXException- Specified by:
warningin interfaceorg.xml.sax.ErrorHandler- Overrides:
warningin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doWarning
protected void doWarning(org.xml.sax.SAXParseException exception) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
exception- SAXParseException- Throws:
org.xml.sax.SAXException- API told me so
-
error
public final void error(org.xml.sax.SAXParseException exception) throws org.xml.sax.SAXException- Specified by:
errorin interfaceorg.xml.sax.ErrorHandler- Overrides:
errorin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doError
protected void doError(org.xml.sax.SAXParseException exception) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
exception- SAXParseException- Throws:
org.xml.sax.SAXException- API told me so
-
fatalError
public final void fatalError(org.xml.sax.SAXParseException exception) throws org.xml.sax.SAXException- Specified by:
fatalErrorin interfaceorg.xml.sax.ErrorHandler- Overrides:
fatalErrorin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
doFatalError
protected void doFatalError(org.xml.sax.SAXParseException exception) throws org.xml.sax.SAXExceptionBy default do nothing.- Parameters:
exception- SAXParseException- Throws:
org.xml.sax.SAXException- API told me so
-
log
protected void log(int logLevel, java.lang.String message, java.lang.Throwable t)
-
log
protected void log(int logLevel, java.lang.String message)
-
getLocation
protected static java.lang.String getLocation(org.xml.sax.Locator locator)
-
skipOnError
private void skipOnError(DelegatingHandler currentHandler, java.lang.Class<? extends DelegatingHandler> handlerClassToSkip, java.lang.String message)
-
getRequiredAttribute
protected java.lang.String getRequiredAttribute(org.xml.sax.Attributes atts, java.lang.String name) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
getOptionalAttribute
protected java.lang.String getOptionalAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.String defaultValue)
-
getRequiredIntAttribute
protected int getRequiredIntAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Integer logLevel) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
getOptionalIntAttribute
protected java.lang.Integer getOptionalIntAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Integer defaultValue) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
parseInt
private int parseInt(java.lang.String name, java.lang.String value) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
getRequiredLongAttribute
protected long getRequiredLongAttribute(org.xml.sax.Attributes atts, java.lang.String name) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
getOptionalLongAttribute
protected java.lang.Long getOptionalLongAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Long defaultValue) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
parseLong
private long parseLong(java.lang.String name, java.lang.String value) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
getRequiredBooleanAttribute
protected boolean getRequiredBooleanAttribute(org.xml.sax.Attributes atts, java.lang.String name) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
getOptionalBooleanAttribute
protected java.lang.Boolean getOptionalBooleanAttribute(org.xml.sax.Attributes atts, java.lang.String name, java.lang.Boolean defaultValue) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
parseBoolean
private boolean parseBoolean(java.lang.String name, java.lang.String value) throws org.xml.sax.SAXParseException- Throws:
org.xml.sax.SAXParseException
-
-