com.springsource.bundlor.support.contributors
Class AbstractXmlConfigurationArtifactAnalyzer

java.lang.Object
  extended by com.springsource.bundlor.support.contributors.AbstractXmlDocumentArtefactAnalyser
      extended by com.springsource.bundlor.support.contributors.AbstractXmlConfigurationArtifactAnalyzer
All Implemented Interfaces:
ArtifactAnalyzer
Direct Known Subclasses:
BlueprintArtifactAnalyzer, SpringApplicationContextArtefactAnalyser

abstract class AbstractXmlConfigurationArtifactAnalyzer
extends AbstractXmlDocumentArtefactAnalyser

An abstract class that encapsulates logic that is common to all XML-based configuration schemes. Concurrent Semantics
Not threadsafe.

Author:
Ben Hale

Nested Class Summary
private static class AbstractXmlConfigurationArtifactAnalyzer.XmlConfigurationNamespaceContext
           
 
Constructor Summary
AbstractXmlConfigurationArtifactAnalyzer()
           
 
Method Summary
protected  void analyse(org.w3c.dom.Document doc, java.lang.String artefactName, PartialManifest partialManifest)
           
private  void analyzeClassAttributes(org.w3c.dom.Document doc, PartialManifest partialManifest)
           
private  void analyzeClassValues(org.w3c.dom.Document doc, PartialManifest partialManifest)
           
private  void analyzePackageAttributes(org.w3c.dom.Document doc, PartialManifest partialManifest)
           
protected abstract  java.lang.String getClassAttributesXPathExpression()
           
protected abstract  java.lang.String getClassValueXPathExpression()
           
private  AbstractXmlConfigurationArtifactAnalyzer.XmlConfigurationNamespaceContext getNamespaceContext()
           
protected abstract  java.util.Map<java.lang.String,java.lang.String> getNamespaceMapping()
           
protected abstract  java.lang.String getPackageXPathExpression()
           
private  javax.xml.xpath.XPathExpression getXPathExpression(java.lang.String expressionString)
           
 
Methods inherited from class com.springsource.bundlor.support.contributors.AbstractXmlDocumentArtefactAnalyser
analyse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.springsource.bundlor.support.ArtifactAnalyzer
canAnalyse
 

Constructor Detail

AbstractXmlConfigurationArtifactAnalyzer

public AbstractXmlConfigurationArtifactAnalyzer()
Method Detail

getClassAttributesXPathExpression

protected abstract java.lang.String getClassAttributesXPathExpression()

getClassValueXPathExpression

protected abstract java.lang.String getClassValueXPathExpression()

getPackageXPathExpression

protected abstract java.lang.String getPackageXPathExpression()

getNamespaceMapping

protected abstract java.util.Map<java.lang.String,java.lang.String> getNamespaceMapping()

analyse

protected final void analyse(org.w3c.dom.Document doc,
                             java.lang.String artefactName,
                             PartialManifest partialManifest)
                      throws java.lang.Exception
Specified by:
analyse in class AbstractXmlDocumentArtefactAnalyser
Throws:
java.lang.Exception

analyzeClassAttributes

private void analyzeClassAttributes(org.w3c.dom.Document doc,
                                    PartialManifest partialManifest)
                             throws javax.xml.xpath.XPathExpressionException
Throws:
javax.xml.xpath.XPathExpressionException

analyzeClassValues

private void analyzeClassValues(org.w3c.dom.Document doc,
                                PartialManifest partialManifest)
                         throws javax.xml.xpath.XPathExpressionException
Throws:
javax.xml.xpath.XPathExpressionException

analyzePackageAttributes

private void analyzePackageAttributes(org.w3c.dom.Document doc,
                                      PartialManifest partialManifest)
                               throws javax.xml.xpath.XPathExpressionException
Throws:
javax.xml.xpath.XPathExpressionException

getXPathExpression

private final javax.xml.xpath.XPathExpression getXPathExpression(java.lang.String expressionString)
                                                          throws javax.xml.xpath.XPathExpressionException
Throws:
javax.xml.xpath.XPathExpressionException

getNamespaceContext

private final AbstractXmlConfigurationArtifactAnalyzer.XmlConfigurationNamespaceContext getNamespaceContext()