Package com.sun.msv.verifier.identity
Class FieldMatcher
java.lang.Object
com.sun.msv.verifier.identity.Matcher
com.sun.msv.verifier.identity.PathMatcher
com.sun.msv.verifier.identity.FieldMatcher
XPath matcher that tests one field of a key.
This object is created by a FieldsMatcher when a SelectorMathcer
finds a match to its selector. This object is responsible for finding
a match to one field of the constraint.
A field XPath may consist of "A|B|C". Each sub case A,B, and C is
tested by a child FieldPathMatcher object. This class coordinates
the work of those children and collects actual text that matches
the given XPath.
- Author:
- Kohsuke KAWAGUCHI
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Matcher[]
child matchers.protected StringBuffer
this field is set to non-null if it's found that an element is matched to this XPath.protected Field
protected final FieldsMatcher
parent FieldsMatcher object.protected Object
the matched value. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
characters
(char[] buf, int start, int len) protected void
endElement
(org.relaxng.datatype.Datatype type) protected final int
getDepth()
protected void
onAttributeMatched
(String namespaceURI, String localName, String value, org.relaxng.datatype.Datatype type) this method is called when the attribute matches the XPath.protected void
onElementMatched
(String namespaceURI, String localName) this method is called when the element matches the XPath.protected void
called when this bundle is deactivated.protected void
startElement
(String namespaceURI, String localName, Attributes attributes) Methods inherited from class com.sun.msv.verifier.identity.PathMatcher
onAttribute, start, startElement
-
Field Details
-
field
-
value
the matched value. If this field is null, then it means nothing is matched yet. -
parent
parent FieldsMatcher object. -
elementText
this field is set to non-null if it's found that an element is matched to this XPath. This field is then used to collect the contents of the matched element until it encounters the endElement method. -
children
child matchers.
-
-
Method Details
-
onElementMatched
this method is called when the element matches the XPath.- Specified by:
onElementMatched
in classPathMatcher
- Throws:
SAXException
-
onAttributeMatched
protected void onAttributeMatched(String namespaceURI, String localName, String value, org.relaxng.datatype.Datatype type) throws SAXException this method is called when the attribute matches the XPath.- Specified by:
onAttributeMatched
in classPathMatcher
- Throws:
SAXException
-
startElement
protected void startElement(String namespaceURI, String localName, Attributes attributes) throws SAXException - Throws:
SAXException
-
endElement
- Throws:
SAXException
-
characters
- Throws:
SAXException
-
getDepth
protected final int getDepth() -
onRemoved
called when this bundle is deactivated. This method is called by the endElement method when this bundle is removed. A derived class can override this method to do whatever necessary.- Throws:
SAXException
-