Package org.apache.felix.scr.impl.xml
Class XmlHandler
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- org.apache.felix.scr.impl.xml.XmlHandler
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ErrorHandler
public class XmlHandler extends org.xml.sax.helpers.DefaultHandlerXML Parser for the component XML
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanfirstElementFlag for detecting the first element.protected booleanisComponentFlag for elements inside a component elementprivate org.osgi.framework.Bundlem_bundleprivate java.util.List<ComponentMetadata>m_componentsprivate ComponentMetadatam_currentComponentprivate ServiceMetadatam_currentServiceprivate booleanm_globalDelayedKeepInstancesprivate booleanm_globalObsoleteFactoryComponentFactoryprivate BundleLoggerm_loggerprivate PropertyMetadatam_pendingFactoryPropertyprivate PropertyMetadatam_pendingPropertyprotected java.lang.StringoverrideNamespaceOverride namespace.private java.lang.StringBuilderpropertyBuilder
-
Constructor Summary
Constructors Constructor Description XmlHandler(org.osgi.framework.Bundle bundle, BundleLogger logger, boolean globalObsoleteFactoryComponentFactory, boolean globalDelayedKeepInstances)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcharacters(char[] ch, int start, int length)voidendElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)java.util.List<ComponentMetadata>getComponentMetadataList()Called to retrieve the service descriptorsprivate java.util.PropertiesreadPropertiesEntry(java.lang.String entryName)Reads the name property file from the bundle owning this descriptor.voidstartElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)
-
-
-
Field Detail
-
m_bundle
private final org.osgi.framework.Bundle m_bundle
-
m_logger
private final BundleLogger m_logger
-
m_globalObsoleteFactoryComponentFactory
private final boolean m_globalObsoleteFactoryComponentFactory
-
m_globalDelayedKeepInstances
private final boolean m_globalDelayedKeepInstances
-
m_currentComponent
private ComponentMetadata m_currentComponent
-
m_currentService
private ServiceMetadata m_currentService
-
m_components
private java.util.List<ComponentMetadata> m_components
-
m_pendingProperty
private PropertyMetadata m_pendingProperty
-
m_pendingFactoryProperty
private PropertyMetadata m_pendingFactoryProperty
-
propertyBuilder
private java.lang.StringBuilder propertyBuilder
-
firstElement
protected boolean firstElement
Flag for detecting the first element.
-
overrideNamespace
protected java.lang.String overrideNamespace
Override namespace.
-
isComponent
protected boolean isComponent
Flag for elements inside a component element
-
-
Constructor Detail
-
XmlHandler
public XmlHandler(org.osgi.framework.Bundle bundle, BundleLogger logger, boolean globalObsoleteFactoryComponentFactory, boolean globalDelayedKeepInstances)
-
-
Method Detail
-
getComponentMetadataList
public java.util.List<ComponentMetadata> getComponentMetadataList()
Called to retrieve the service descriptors- Returns:
- A list of service descriptors
-
startElement
public void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes) throws org.xml.sax.SAXException- Specified by:
startElementin interfaceorg.xml.sax.ContentHandler- Overrides:
startElementin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
endElement
public void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXException- Specified by:
endElementin interfaceorg.xml.sax.ContentHandler- Overrides:
endElementin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
characters
public 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
-
readPropertiesEntry
private java.util.Properties readPropertiesEntry(java.lang.String entryName) throws org.xml.sax.SAXExceptionReads the name property file from the bundle owning this descriptor. All properties read from the properties file are added to the current component's property meta data list.- Parameters:
entryName- The name of the bundle entry containing the propertes to be added. This must not benull.- Throws:
org.xml.sax.SAXException- If the entry name isnullor no entry with the given name exists in the bundle or an error occurrs reading the properties file.
-
-