/** * getXMLStreamReader * * @return Returns reader. */ private XMLStreamReader getXMLStreamReader(boolean cache) { if ((builder == null) && !cache) { throw new UnsupportedOperationException( "This element was not created in a manner to be switched"); } if (builder != null && builder.isCompleted() && !cache) { throw new UnsupportedOperationException( "The parser is already consumed!"); } return new DOMStAXWrapper(builder, this, cache); }
/** * Method generateEvents * * @param node * @return Returns int. */ private int generateEvents(OMNode node) { int returnEvent = 0; int nodeType = node.getType(); switch (nodeType) { case OMNode.ELEMENT_NODE: OMElement element = (OMElement) node; returnEvent = generateElementEvents(element); break; case OMNode.TEXT_NODE: returnEvent = generateTextEvents(); break; case OMNode.COMMENT_NODE: returnEvent = generateCommentEvents(); break; case OMNode.CDATA_SECTION_NODE: returnEvent = generateCdataEvents(); break; default: break; // just ignore any other nodes } return returnEvent; }
/** * @param i * @return Returns String. * @see javax.xml.stream.XMLStreamReader#getAttributeValue */ public String getAttributeValue(int i) { String returnString = null; if (parser != null) { returnString = parser.getAttributeValue(i); } else { if (isStartElement() || (currentEvent == ATTRIBUTE)) { OMAttribute attrib = getAttribute((OMElement) lastNode, i); if (attrib != null) { returnString = attrib.getAttributeValue(); } } else { throw new IllegalStateException( "attribute type accessed in illegal event!"); } } return returnString; }
/** * @return Returns int. * @see javax.xml.stream.XMLStreamReader#getNamespaceCount() */ public int getNamespaceCount() { int returnCount = 0; if (parser != null) { returnCount = parser.getNamespaceCount(); } else { if (isStartElement() || isEndElement() || (currentEvent == NAMESPACE)) { returnCount = getCount(((OMElement) lastNode) .getAllDeclaredNamespaces()); } } return returnCount; }
/** * @param i * @return Returns String. * @see javax.xml.stream.XMLStreamReader#getNamespaceURI */ public String getNamespaceURI(int i) { String returnString = null; if (parser != null) { returnString = parser.getNamespaceURI(i); } else { if (isStartElement() || isEndElement() || (currentEvent == NAMESPACE)) { OMNamespace ns = (OMNamespace) getItemFromIterator( ((OMElement) lastNode).getAllDeclaredNamespaces(), i); returnString = (ns == null) ? null : ns.getNamespaceURI(); } } return returnString; }
currentEvent = parser.getEventType(); updateCompleteStatus(); break; case NAVIGABLE: currentEvent = generateEvents(currentNode); updateCompleteStatus(); updateLastNode(); break; case SWITCHED: currentEvent = parser.next(); updateCompleteStatus(); break; default:
/** * @return Returns int. * @see javax.xml.stream.XMLStreamReader#getAttributeCount */ public int getAttributeCount() { int returnCount = 0; if (parser != null) { returnCount = parser.getAttributeCount(); } else { if (isStartElement() || (currentEvent == ATTRIBUTE)) { OMElement elt = (OMElement) lastNode; returnCount = getCount(elt.getAllAttributes()); } else { throw new IllegalStateException( "attribute count accessed in illegal event (" + currentEvent + ")!"); } } return returnCount; }
/** * @return Returns QName. * @see javax.xml.stream.XMLStreamReader#getName() */ public QName getName() { QName returnName = null; if (parser != null) { returnName = parser.getName(); } else { if ((currentEvent == START_ELEMENT) || (currentEvent == END_ELEMENT)) { returnName = getQName((OMElement) lastNode); } } return returnName; }
/** * @param elt * @param index * @return Returns OMAttribute. */ private OMAttribute getAttribute(OMElement elt, int index) { OMAttribute returnAttrib = null; if (elt != null) { returnAttrib = (OMAttribute) getItemFromIterator(elt .getAllAttributes(), index); } return returnAttrib; }
/** * @param i * @return Returns String. * @see javax.xml.stream.XMLStreamReader#getNamespacePrefix */ public String getNamespacePrefix(int i) { String returnString = null; if (parser != null) { returnString = parser.getNamespacePrefix(i); } else { if (isStartElement() || isEndElement() || (currentEvent == NAMESPACE)) { OMNamespace ns = (OMNamespace) getItemFromIterator( ((OMElement) lastNode).getAllDeclaredNamespaces(), i); returnString = (ns == null) ? null : ns.getPrefix(); } } return returnString; }
/** * @param i * @return Returns String. * @see javax.xml.stream.XMLStreamReader#getAttributeNamespace */ public String getAttributeNamespace(int i) { String returnString = null; if (parser != null) { returnString = parser.getAttributeNamespace(i); } else { if (isStartElement() || (currentEvent == ATTRIBUTE)) { OMAttribute attrib = getAttribute((OMElement) lastNode, i); if (attrib != null) { OMNamespace nameSpace = attrib.getNamespace(); if (nameSpace != null) { returnString = nameSpace.getNamespaceURI(); } } } else { throw new IllegalStateException( "attribute nameSpace accessed in illegal event!"); } } return returnString; }
/** * @param i * @return Returns QName. * @see javax.xml.stream.XMLStreamReader#getAttributeName */ public QName getAttributeName(int i) { QName returnQName = null; if (parser != null) { returnQName = parser.getAttributeName(i); } else { if (isStartElement() || (currentEvent == ATTRIBUTE)) { returnQName = getAttribute((OMElement) lastNode, i).getQName(); } else { throw new IllegalStateException( "attribute count accessed in illegal event!"); } } return returnQName; }
/** * @param i * @return Returns String. * @see javax.xml.stream.XMLStreamReader#getAttributeLocalName */ public String getAttributeLocalName(int i) { String returnString = null; if (parser != null) { returnString = parser.getAttributeLocalName(i); } else { if (isStartElement() || (currentEvent == ATTRIBUTE)) { OMAttribute attrib = getAttribute((OMElement) lastNode, i); if (attrib != null) { if (attrib.getNamespace() != null) { returnString = attrib.getLocalName(); } else { returnString = ((Attr) attrib).getNodeName(); } } } else { throw new IllegalStateException( "attribute localName accessed in illegal event!"); } } return returnString; }
/** * @param i * @return Returns String. * @see javax.xml.stream.XMLStreamReader#getAttributePrefix */ public String getAttributePrefix(int i) { String returnString = null; if (parser != null) { returnString = parser.getAttributePrefix(i); } else { if (isStartElement() || (currentEvent == ATTRIBUTE)) { OMAttribute attrib = getAttribute((OMElement) lastNode, i); if (attrib != null) { OMNamespace nameSpace = attrib.getNamespace(); if (nameSpace != null) { returnString = nameSpace.getPrefix(); } } } else { throw new IllegalStateException( "attribute prefix accessed in illegal event!"); } } return returnString; }