/** * Scan xml for tag child of the current element * * @param reader reader, must be at "start element" @nonnull * @param tagName name of child tag to find @nonnull * @return if found tag * @throws XMLStreamException on error */ static boolean scanForChildTag(XMLStreamReader reader, String tagName) throws XMLStreamException { assert reader.isStartElement(); int level = -1; while (reader.hasNext()) { //keep track of level so we only search children, not descendants if (reader.isStartElement()) { level++; } else if (reader.isEndElement()) { level--; } if (level < 0) { //end parent tag - no more children break; } reader.next(); if (level == 0 && reader.isStartElement() && reader.getLocalName().equals(tagName)) { return true; //found } } return false; //got to end of parent element and not found }
if(event == XMLStreamConstants.START_DOCUMENT) { while( !staxStreamReader.isStartElement() ) event = staxStreamReader.next(); event=staxStreamReader.next(); staxStreamReader.next(); // move beyond the end tag.
public String getText() { assert _xmlStream.isStartElement() : "Not on Start Element."; return _xmlStream.getAttributeValue(_attIndex); }
import javax.xml.stream.StreamFilter; import javax.xml.stream.XMLStreamReader; public class CompanyFilter implements StreamFilter { private boolean accept = true; public boolean accept(XMLStreamReader reader) { if(reader.isStartElement() && "company".equals(reader.getLocalName())) { accept = "abc".equals(reader.getAttributeValue(null, "name")); } else if(reader.isEndElement()) { boolean returnValue = accept; accept = true; return returnValue; } return accept; } }
private void readTillNextStartTag(final XMLStreamReader reader) throws XMLStreamException { while (reader.hasNext() && !reader.isStartElement()) { reader.next(); } }
private static String consumeText( XMLStreamReader reader ) throws XMLStreamException { reader.next(); StringBuilder sb = new StringBuilder(); while ( !reader.isEndElement() && !reader.isStartElement() ) { if ( reader.isCharacters() ) { sb.append( reader.getText().trim() ); } reader.next(); } return sb.toString(); } }
private void parseCapabilityOrRequirement(ResourceBuilder resourceBuilder) throws Exception { String name = reader.getLocalName(); check(TAG_REQUIREMENT.equals(name) || TAG_CAPABILITY.equals(name), "Expected <%s> or <%s> tag, got <%s>", TAG_REQUIREMENT, TAG_CAPABILITY, name); String namespace = reader.getAttributeValue(null, ATTR_NAMESPACE); CapReqBuilder capReqBuilder = new CapReqBuilder(namespace); next(); while (reader.isStartElement()) { parseAttributesOrDirectives(capReqBuilder); } if (TAG_REQUIREMENT.equals(name)) { resourceBuilder.addRequirement(capReqBuilder); } else { resourceBuilder.addCapability(capReqBuilder); } tagEnd(name); }
public boolean accept(XMLStreamReader r) { if (!r.isStartElement() && !r.isEndElement()) return false; QName eName = new QName(r.getNamespaceURI(), r.getLocalName()); if (name.equals(eName)) return true; return false; } }
protected static boolean isStartElement(XMLStreamReader reader, String localName) { return reader.isStartElement() && reader.getLocalName().equals(localName); }
private static boolean isElement( XMLStreamReader xmlr, String elementLocalName) { return (xmlr.isStartElement() || xmlr.isEndElement()) && getLocalName(xmlr).equals(elementLocalName); }
protected void parseChildElements(XMLStreamReader xtr, BaseElement parentElement, BpmnModel model, BaseChildElementParser parser) throws Exception { boolean readyWithChildElements = false; while (!readyWithChildElements && xtr.hasNext()) { xtr.next(); if (xtr.isStartElement()) { if (parser.getElementName().equals(xtr.getLocalName())) { parser.parseChildElement(xtr, parentElement, model); } } else if (xtr.isEndElement() && getElementName().equalsIgnoreCase(xtr.getLocalName())) { readyWithChildElements = true; } } }
private void readContent(final XMLStreamReader reader, final EntityInfoAggregator eia) throws EntityProviderException, XMLStreamException, EdmException { reader.require(XMLStreamConstants.START_ELEMENT, Edm.NAMESPACE_ATOM_2005, FormatXml.ATOM_CONTENT); final String contentType = reader.getAttributeValue(null, FormatXml.ATOM_TYPE); final String sourceLink = reader.getAttributeValue(null, FormatXml.ATOM_SRC); reader.nextTag(); if (reader.isStartElement() && reader.getLocalName().equals(FormatXml.M_PROPERTIES)) { readProperties(reader, eia); } else if (reader.isEndElement()) { reader.require(XMLStreamConstants.END_ELEMENT, Edm.NAMESPACE_ATOM_2005, FormatXml.ATOM_CONTENT); } else { throw new EntityProviderException(EntityProviderException.INVALID_STATE .addContent("Expected closing 'content' or starting 'properties' but found '" + reader.getLocalName() + "'.")); } mediaMetadata.setContentType(contentType); mediaMetadata.setSourceLink(sourceLink); }
private void readTillNextStartTag(final XMLStreamReader reader) throws XMLStreamException { while (reader.hasNext() && !reader.isStartElement()) { reader.next(); } }
if(event == XMLStreamConstants.START_DOCUMENT) { while( !staxStreamReader.isStartElement() ) event = staxStreamReader.next(); event=staxStreamReader.next(); staxStreamReader.next(); // move beyond the end tag.
public String getText(int wsr) { assert _xmlStream.isStartElement() : "Not on Start Element."; return XmlWhitespace.collapse( _xmlStream.getAttributeValue(_attIndex), wsr ); }
@Override public boolean hasNext() { return recordElementName != null && xmlStream.isStartElement() && recordElementName.equals( xmlStream.getLocalName() ); }
private static boolean isElement( XMLStreamReader xmlr, String elementLocalName) { return (xmlr.isStartElement() || xmlr.isEndElement()) && getLocalName(xmlr).equals(elementLocalName); }
public void parse(XMLStreamReader xtr, BpmnModel model) throws Exception { String id = xtr.getAttributeValue(null, ATTRIBUTE_DI_BPMNELEMENT); GraphicInfo graphicInfo = new GraphicInfo(); String strIsExpanded = xtr.getAttributeValue(null, ATTRIBUTE_DI_IS_EXPANDED); if ("true".equalsIgnoreCase(strIsExpanded)) { graphicInfo.setExpanded(true); } BpmnXMLUtil.addXMLLocation(graphicInfo, xtr); while (xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && ELEMENT_DI_BOUNDS.equalsIgnoreCase(xtr.getLocalName())) { graphicInfo.setX(Double.valueOf(xtr.getAttributeValue(null, ATTRIBUTE_DI_X))); graphicInfo.setY(Double.valueOf(xtr.getAttributeValue(null, ATTRIBUTE_DI_Y))); graphicInfo.setWidth(Double.valueOf(xtr.getAttributeValue(null, ATTRIBUTE_DI_WIDTH))); graphicInfo.setHeight(Double.valueOf(xtr.getAttributeValue(null, ATTRIBUTE_DI_HEIGHT))); model.addGraphicInfo(id, graphicInfo); break; } else if (xtr.isEndElement() && ELEMENT_DI_SHAPE.equalsIgnoreCase(xtr.getLocalName())) { break; } } }
private void readContent(final XMLStreamReader reader, final EntityInfoAggregator eia, final DeserializerProperties readProperties) throws EntityProviderException, XMLStreamException, EdmException { reader.require(XMLStreamConstants.START_ELEMENT, Edm.NAMESPACE_ATOM_2005, FormatXml.ATOM_CONTENT); final String contentType = reader.getAttributeValue(null, FormatXml.ATOM_TYPE); final String sourceLink = reader.getAttributeValue(null, FormatXml.ATOM_SRC); reader.nextTag(); if (reader.isStartElement() && reader.getLocalName().equals(FormatXml.M_PROPERTIES)) { readProperties(reader, eia, readProperties); } else if (reader.isEndElement()) { reader.require(XMLStreamConstants.END_ELEMENT, Edm.NAMESPACE_ATOM_2005, FormatXml.ATOM_CONTENT); } else { throw new EntityProviderException(EntityProviderException.INVALID_STATE .addContent("Expected closing 'content' or starting 'properties' but found '" + reader.getLocalName() + "'.")); } mediaMetadata.setContentType(contentType); mediaMetadata.setSourceLink(sourceLink); }
private void readTillNextStartTag(final XMLStreamReader reader) throws XMLStreamException { while (reader.hasNext() && !reader.isStartElement()) { reader.next(); } }