/** * Bypass an entire XML element block from startElement to endElement * * @param xmlEventReader * @param tag Tag of the XML element that we need to bypass * @throws ParsingException */ public static void bypassElementBlock(XMLEventReader xmlEventReader, String tag) throws ParsingException { while (xmlEventReader.hasNext()) { EndElement endElement = getNextEndElement(xmlEventReader); if (endElement == null) return; if (StaxParserUtil.matches(endElement, tag)) return; } }
/** * Bypass an entire XML element block from startElement to endElement * @param xmlEventReader * @param tag Tag of the XML element that we need to bypass * @throws ParsingException */ public static void bypassElementBlock(XMLEventReader xmlEventReader, String tag) throws ParsingException { while (xmlEventReader.hasNext()) { EndElement endElement = getNextEndElement(xmlEventReader); if (endElement == null) return; if (StaxParserUtil.matches(endElement, tag)) return; } }
/** * Bypass an entire XML element block from startElement to endElement * @param xmlEventReader * @param tag Tag of the XML element that we need to bypass * @throws ParsingException */ public static void bypassElementBlock(XMLEventReader xmlEventReader, String tag) throws ParsingException { while (xmlEventReader.hasNext()) { EndElement endElement = getNextEndElement(xmlEventReader); if (endElement == null) return; if (StaxParserUtil.matches(endElement, tag)) return; } }
private IndexedEndpointType parseAssertionConsumerService(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { startElement = StaxParserUtil.getNextStartElement(xmlEventReader); IndexedEndpointType endpoint = parseIndexedEndpoint(xmlEventReader, startElement); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ASSERTION_CONSUMER_SERVICE.get()); return endpoint; }
private IndexedEndpointType parseAssertionConsumerService(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { startElement = StaxParserUtil.getNextStartElement(xmlEventReader); IndexedEndpointType endpoint = parseIndexedEndpoint(xmlEventReader, startElement); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ASSERTION_CONSUMER_SERVICE.get()); return endpoint; }
private IndexedEndpointType parseArtifactResolutionService(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { startElement = StaxParserUtil.getNextStartElement(xmlEventReader); IndexedEndpointType endpoint = parseIndexedEndpoint(xmlEventReader, startElement); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ARTIFACT_RESOLUTION_SERVICE.get()); return endpoint; }
private IndexedEndpointType parseAssertionConsumerService(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { startElement = StaxParserUtil.getNextStartElement(xmlEventReader); IndexedEndpointType endpoint = parseIndexedEndpoint(xmlEventReader, startElement); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ASSERTION_CONSUMER_SERVICE.get()); return endpoint; }
private IndexedEndpointType parseArtifactResolutionService(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { startElement = StaxParserUtil.getNextStartElement(xmlEventReader); IndexedEndpointType endpoint = parseIndexedEndpoint(xmlEventReader, startElement); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ARTIFACT_RESOLUTION_SERVICE.get()); return endpoint; }
private IndexedEndpointType parseArtifactResolutionService(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { startElement = StaxParserUtil.getNextStartElement(xmlEventReader); IndexedEndpointType endpoint = parseIndexedEndpoint(xmlEventReader, startElement); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ARTIFACT_RESOLUTION_SERVICE.get()); return endpoint; }
public static RenewingType parseRenewingType(XMLEventReader xmlEventReader) throws ParsingException { RenewingType renewingType = new RenewingType(); StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, WSTrustConstants.RENEWING); Attribute allowAttribute = startElement.getAttributeByName(new QName(WSTrustConstants.ALLOW)); if (allowAttribute != null) { renewingType.setAllow(Boolean.parseBoolean(StaxParserUtil.getAttributeValue(allowAttribute))); } Attribute okAttribute = startElement.getAttributeByName(new QName(WSTrustConstants.OK)); if (allowAttribute != null) { renewingType.setOK(Boolean.parseBoolean(StaxParserUtil.getAttributeValue(okAttribute))); } EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, WSTrustConstants.RENEWING); return renewingType; }
private RequestedSecurityTokenType parseRequestedSecurityTokenType(XMLEventReader xmlEventReader) throws ParsingException { RequestedSecurityTokenType requestedSecurityTokenType = new RequestedSecurityTokenType(); StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, WSTrustConstants.REQUESTED_TOKEN); XMLEvent xmlEvent = null; while (xmlEventReader.hasNext()) { xmlEvent = StaxParserUtil.peek(xmlEventReader); if (xmlEvent instanceof EndElement) { String endElementTag = StaxParserUtil.getEndElementName((EndElement) xmlEvent); if (endElementTag.equals(WSTrustConstants.REQUESTED_TOKEN)) { xmlEvent = StaxParserUtil.getNextEndElement(xmlEventReader); break; } else throw new RuntimeException(ErrorCodes.UNKNOWN_END_ELEMENT + endElementTag); } Element tokenElement = StaxParserUtil.getDOMElement(xmlEventReader); requestedSecurityTokenType.add(tokenElement); } return requestedSecurityTokenType; }
private RequestedSecurityTokenType parseRequestedSecurityTokenType(XMLEventReader xmlEventReader) throws ParsingException { RequestedSecurityTokenType requestedSecurityTokenType = new RequestedSecurityTokenType(); StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, WSTrustConstants.REQUESTED_TOKEN); XMLEvent xmlEvent = null; while (xmlEventReader.hasNext()) { xmlEvent = StaxParserUtil.peek(xmlEventReader); if (xmlEvent instanceof EndElement) { String endElementTag = StaxParserUtil.getEndElementName((EndElement) xmlEvent); if (endElementTag.equals(WSTrustConstants.REQUESTED_TOKEN)) { xmlEvent = StaxParserUtil.getNextEndElement(xmlEventReader); break; } else throw new RuntimeException(ErrorCodes.UNKNOWN_END_ELEMENT + endElementTag); } Element tokenElement = StaxParserUtil.getDOMElement(xmlEventReader); requestedSecurityTokenType.add(tokenElement); } return requestedSecurityTokenType; }
private RequestedSecurityTokenType parseRequestedSecurityTokenType(XMLEventReader xmlEventReader) throws ParsingException { RequestedSecurityTokenType requestedSecurityTokenType = new RequestedSecurityTokenType(); StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, WSTrustConstants.REQUESTED_TOKEN); XMLEvent xmlEvent = null; while (xmlEventReader.hasNext()) { xmlEvent = StaxParserUtil.peek(xmlEventReader); if (xmlEvent instanceof EndElement) { String endElementTag = StaxParserUtil.getEndElementName((EndElement) xmlEvent); if (endElementTag.equals(WSTrustConstants.REQUESTED_TOKEN)) { xmlEvent = StaxParserUtil.getNextEndElement(xmlEventReader); break; } else throw logger.parserUnknownEndElement(endElementTag); } Element tokenElement = StaxParserUtil.getDOMElement(xmlEventReader); requestedSecurityTokenType.add(tokenElement); } return requestedSecurityTokenType; }
protected Handler parseHandler(XMLEventReader xmlEventReader, StartElement startElement) throws ParsingException { XMLEvent xmlEvent = null; Handler handlerType = new Handler(); // parse and set the ClassName element attributes. QName attributeQName = new QName("", CLASS); Attribute attribute = startElement.getAttributeByName(attributeQName); if (attribute != null) handlerType.setClazz(StaxParserUtil.getAttributeValue(attribute)); while (xmlEventReader.hasNext()) { xmlEvent = StaxParserUtil.peek(xmlEventReader); if (xmlEvent == null) break; if (xmlEvent instanceof EndElement) { EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); String endElementName = StaxParserUtil.getEndElementName(endElement); if (endElementName.equals(HANDLER)) break; else continue; } startElement = StaxParserUtil.getNextStartElement(xmlEventReader); String startElementName = StaxParserUtil.getStartElementName(startElement); if (startElementName.equals(OPTION)) { KeyValueType auth = new KeyValueType(); populateKeyValueType(auth, startElement); handlerType.add(auth); } } return handlerType; }
tag = StaxParserUtil.getEndElementName((EndElement) xmlEvent); if (tag.equals(WSTrustConstants.XMLDSig.RSA_KEYVALUE)) { xmlEvent = StaxParserUtil.getNextEndElement(xmlEventReader); break; } else
/** * Parse an {@code SAML11AttributeType} * * @param xmlEventReader * @throws ParsingException */ public static void parseAttributeType(XMLEventReader xmlEventReader, StartElement startElement, String rootTag, SAML11AttributeType attributeType) throws ParsingException { while (xmlEventReader.hasNext()) { XMLEvent xmlEvent = StaxParserUtil.peek(xmlEventReader); if (xmlEvent instanceof EndElement) { EndElement end = StaxParserUtil.getNextEndElement(xmlEventReader); if (StaxParserUtil.matches(end, rootTag)) break; } startElement = StaxParserUtil.peekNextStartElement(xmlEventReader); if (startElement == null) break; String tag = StaxParserUtil.getStartElementName(startElement); if (JBossSAMLConstants.ATTRIBUTE.get().equals(tag)) break; if (JBossSAMLConstants.ATTRIBUTE_VALUE.get().equals(tag)) { Object attributeValue = parseAttributeValue(xmlEventReader); attributeType.add(attributeValue); } else throw logger.parserUnknownTag(tag, startElement.getLocation()); } }
private RequestedReferenceType parseRequestedReference(XMLEventReader xmlEventReader, String requestedReferenceTag) throws ParsingException { StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, requestedReferenceTag); RequestedReferenceType ref = new RequestedReferenceType(); WSSecurityParser wsseParser = new WSSecurityParser(); SecurityTokenReferenceType secref = (SecurityTokenReferenceType) wsseParser.parse(xmlEventReader); ref.setSecurityTokenReference(secref); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, requestedReferenceTag); return ref; }
private RequestedReferenceType parseRequestedReference(XMLEventReader xmlEventReader) throws ParsingException { StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, WSTrustConstants.REQUESTED_ATTACHED_REFERENCE); RequestedReferenceType ref = new RequestedReferenceType(); WSSecurityParser wsseParser = new WSSecurityParser(); SecurityTokenReferenceType secref = (SecurityTokenReferenceType) wsseParser.parse(xmlEventReader); ref.setSecurityTokenReference(secref); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, WSTrustConstants.REQUESTED_ATTACHED_REFERENCE); return ref; } }
private RequestedReferenceType parseRequestedReference(XMLEventReader xmlEventReader) throws ParsingException { StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); StaxParserUtil.validate(startElement, WSTrustConstants.REQUESTED_ATTACHED_REFERENCE); RequestedReferenceType ref = new RequestedReferenceType(); WSSecurityParser wsseParser = new WSSecurityParser(); SecurityTokenReferenceType secref = (SecurityTokenReferenceType) wsseParser.parse(xmlEventReader); ref.setSecurityTokenReference(secref); EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, WSTrustConstants.REQUESTED_ATTACHED_REFERENCE); return ref; } }
/** * Parse an {@code AttributeStatementType} * * @param xmlEventReader * @return * @throws ParsingException */ public static AttributeStatementType parseAttributeStatement(XMLEventReader xmlEventReader) throws ParsingException { AttributeStatementType attributeStatementType = new AttributeStatementType(); StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader); String ATTRIBSTATEMT = JBossSAMLConstants.ATTRIBUTE_STATEMENT.get(); StaxParserUtil.validate(startElement, ATTRIBSTATEMT); while (xmlEventReader.hasNext()) { XMLEvent xmlEvent = StaxParserUtil.peek(xmlEventReader); if (xmlEvent instanceof EndElement) { EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader); StaxParserUtil.validate(endElement, JBossSAMLConstants.ATTRIBUTE_STATEMENT.get()); break; } // Get the next start element startElement = StaxParserUtil.peekNextStartElement(xmlEventReader); String tag = startElement.getName().getLocalPart(); if (JBossSAMLConstants.ATTRIBUTE.get().equals(tag)) { AttributeType attribute = parseAttribute(xmlEventReader); attributeStatementType.addAttribute(new ASTChoiceType(attribute)); } else throw logger.parserUnknownTag(tag, startElement.getLocation()); } return attributeStatementType; }