Class SAMLExtensionsParser
java.lang.Object
org.keycloak.saml.common.parsers.AbstractStaxParser<T,SAMLProtocolQNames>
org.keycloak.saml.processing.core.parsers.saml.protocol.AbstractStaxSamlProtocolParser<ExtensionsType>
org.keycloak.saml.processing.core.parsers.saml.protocol.SAMLExtensionsParser
- All Implemented Interfaces:
StaxParser
Parses <samlp:Extensions> SAML2 element into series of DOM nodes.
- Author:
- hmlnarik
-
Field Summary
Fields inherited from class org.keycloak.saml.processing.core.parsers.saml.protocol.AbstractStaxSamlProtocolParser
LOOKUP
Fields inherited from class org.keycloak.saml.common.parsers.AbstractStaxParser
expectedStartElement, LOGGER
-
Method Summary
Modifier and TypeMethodDescriptionstatic SAMLExtensionsParser
protected ExtensionsType
instantiateElement
(XMLEventReader xmlEventReader, StartElement element) Instantiates the target Java class representing the current element.
Precondition: Current event is theStartElement
Postcondition: Current event is theStartElement
or theEndElement
corresponding to theStartElement
protected void
processSubElement
(XMLEventReader xmlEventReader, ExtensionsType target, SAMLProtocolQNames element, StartElement elementDetail) Processes the subelement of the element processed inAbstractStaxParser.instantiateElement(javax.xml.stream.XMLEventReader, javax.xml.stream.events.StartElement)
method.
Precondition: Current event: Last before theStartElement
corresponding to the processed subelement, i.e.Methods inherited from class org.keycloak.saml.processing.core.parsers.saml.protocol.AbstractStaxSamlProtocolParser
getElementFromName
Methods inherited from class org.keycloak.saml.common.parsers.AbstractStaxParser
isUnknownElement, parse, validateStartElement
-
Method Details
-
getInstance
-
instantiateElement
protected ExtensionsType instantiateElement(XMLEventReader xmlEventReader, StartElement element) throws ParsingException Description copied from class:AbstractStaxParser
Instantiates the target Java class representing the current element.
Precondition: Current event is theStartElement
Postcondition: Current event is theStartElement
or theEndElement
corresponding to theStartElement
- Specified by:
instantiateElement
in classAbstractStaxParser<ExtensionsType,
SAMLProtocolQNames> element
- The XML event that was just read from thexmlEventReader
- Returns:
- Throws:
ParsingException
-
processSubElement
protected void processSubElement(XMLEventReader xmlEventReader, ExtensionsType target, SAMLProtocolQNames element, StartElement elementDetail) throws ParsingException Description copied from class:AbstractStaxParser
Processes the subelement of the element processed inAbstractStaxParser.instantiateElement(javax.xml.stream.XMLEventReader, javax.xml.stream.events.StartElement)
method.
Precondition: Current event: Last before theStartElement
corresponding to the processed subelement, i.e. event obtained byIterator.next()
is theStartElement
of the subelement being processed
Postcondition: Event obtained byIterator.next()
is either the sameStartElement
(i.e. no change in position which causes this subelement to be skipped), the correspondingEndElement
, or the event after the correspondingEndElement
.Note that in case of recursive nesting the same element, the corresponding end element MUST be consumed in this method.
- Specified by:
processSubElement
in classAbstractStaxParser<ExtensionsType,
SAMLProtocolQNames> target
- Target object (the one created by theAbstractStaxParser.instantiateElement(javax.xml.stream.XMLEventReader, javax.xml.stream.events.StartElement)
method.element
- The constant corresponding to the current start element.elementDetail
- The XML event that was just read from thexmlEventReader
- Throws:
ParsingException
-