Package org.picketlink.identity.federation.core.config

Examples of org.picketlink.identity.federation.core.config.TokenProvidersType


     */
    private TokenProvidersType parseTokenProviders(XMLEventReader xmlEventReader) throws ParsingException {
        StartElement startElement = StaxParserUtil.getNextStartElement(xmlEventReader);
        StaxParserUtil.validate(startElement, TOKEN_PROVIDERS_ELEMENT);

        TokenProvidersType tokenProviders = new TokenProvidersType();

        // parse all token providers one by one.
        while (xmlEventReader.hasNext()) {
            XMLEvent xmlEvent = StaxParserUtil.peek(xmlEventReader);
            if (xmlEvent == null)
                break;
            if (xmlEvent instanceof EndElement) {
                EndElement endElement = (EndElement) StaxParserUtil.getNextEvent(xmlEventReader);
                String endElementName = StaxParserUtil.getEndElementName(endElement);
                if (endElementName.equals(TOKEN_PROVIDERS_ELEMENT))
                    break;
                else
                    throw logger.parserUnknownEndElement(endElementName);
            }

            StartElement subEvent = StaxParserUtil.peekNextStartElement(xmlEventReader);
            if (subEvent == null)
                break;
            String elementName = StaxParserUtil.getStartElementName(subEvent);

            if (TOKEN_PROVIDER_ELEMENT.equalsIgnoreCase(elementName)) {
                subEvent = StaxParserUtil.getNextStartElement(xmlEventReader);
                StaxParserUtil.validate(subEvent, TOKEN_PROVIDER_ELEMENT);
                TokenProviderType tokenProvider = new TokenProviderType();

                // parse the provider attributes (provider class, token type, token element, token namespace).
                QName attributeQName = new QName("", PROVIDER_CLASS_ATTRIB);
                Attribute attribute = subEvent.getAttributeByName(attributeQName);
                if (attribute != null)
                    tokenProvider.setProviderClass(StaxParserUtil.getAttributeValue(attribute));
                attributeQName = new QName("", TOKEN_TYPE_ATTRIB);
                attribute = subEvent.getAttributeByName(attributeQName);
                if (attribute != null)
                    tokenProvider.setTokenType(StaxParserUtil.getAttributeValue(attribute));
                attributeQName = new QName("", TOKEN_ELEMENT_ATTRIB);
                attribute = subEvent.getAttributeByName(attributeQName);
                if (attribute != null)
                    tokenProvider.setTokenElement(StaxParserUtil.getAttributeValue(attribute));
                attributeQName = new QName("", TOKEN_ELEMENT_NS_ATTRIB);
                attribute = subEvent.getAttributeByName(attributeQName);
                if (attribute != null)
                    tokenProvider.setTokenElementNS(StaxParserUtil.getAttributeValue(attribute));

                // parse the provider properties.
                while (xmlEventReader.hasNext()) {
                    xmlEvent = StaxParserUtil.peek(xmlEventReader);
                    if (xmlEvent == null)
                        break;
                    if (xmlEvent instanceof EndElement) {
                        EndElement endElement = (EndElement) StaxParserUtil.getNextEvent(xmlEventReader);
                        String endElementName = StaxParserUtil.getEndElementName(endElement);
                        if (endElementName.equals(TOKEN_PROVIDER_ELEMENT))
                            break;
                        else
                            throw logger.parserUnknownEndElement(endElementName);
                    }

                    subEvent = StaxParserUtil.peekNextStartElement(xmlEventReader);
                    if (subEvent == null)
                        break;
                    elementName = StaxParserUtil.getStartElementName(subEvent);
                    if (PROPERTY_ELEMENT.equalsIgnoreCase(elementName)) {
                        // parse the property key and value.
                        subEvent = StaxParserUtil.getNextStartElement(xmlEventReader);
                        KeyValueType keyValue = new KeyValueType();
                        // parse the key and value attributes.
                        attributeQName = new QName("", KEY_ATTRIB);
                        attribute = subEvent.getAttributeByName(attributeQName);
                        if (attribute != null)
                            keyValue.setKey(StaxParserUtil.getAttributeValue(attribute));
                        attributeQName = new QName("", VALUE_ATTRIB);
                        attribute = subEvent.getAttributeByName(attributeQName);
                        if (attribute != null)
                            keyValue.setValue(StaxParserUtil.getAttributeValue(attribute));

                        EndElement endElement = StaxParserUtil.getNextEndElement(xmlEventReader);
                        StaxParserUtil.validate(endElement, PROPERTY_ELEMENT);
                        tokenProvider.add(keyValue);
                    } else
                        throw logger.parserUnknownTag(elementName, subEvent.getLocation());
                }
                tokenProviders.add(tokenProvider);
            } else
                throw logger.parserUnknownTag(elementName, subEvent.getLocation());
        }
        return tokenProviders;
    }
View Full Code Here


        // set the default request handler if one hasn't been specified.
        if (this.delegate.getRequestHandler() == null)
            this.delegate.setRequestHandler(StandardRequestHandler.class.getCanonicalName());

        // build the token-provider maps.
        TokenProvidersType providers = this.delegate.getTokenProviders();
        if (providers != null) {
            for (TokenProviderType provider : providers.getTokenProvider()) {
                // get the properties that have been configured for the token provider.
                Map<String, String> properties = new HashMap<String, String>();

                List<KeyValueType> providerPropertiesList;
                try {
View Full Code Here

        assertNotNull("Unexpected null key provider", stsType.getKeyProvider());
        // request handler and configurations based on the token type.
        assertEquals("Unexpected request handler class", "org.picketlink.identity.federation.wstrust.Handler",
                stsType.getRequestHandler());
        // configuration of the token providers.
        TokenProvidersType tokenProviders = stsType.getTokenProviders();
        assertNotNull("Unexpected null list of token providers", tokenProviders);
        assertEquals("Unexpected number of token providers", 1, tokenProviders.getTokenProvider().size());
        TokenProviderType tokenProvider = tokenProviders.getTokenProvider().get(0);
        assertNotNull("Unexpected null token provider", tokenProvider);
        assertEquals("Unexpected provider class name", "org.jboss.SpecialTokenProvider", tokenProvider.getProviderClass());
        assertEquals("Unexpected token type", "specialToken", tokenProvider.getTokenType());
        assertEquals("Unexpected token element name", "SpecialToken", tokenProvider.getTokenElement());
        assertEquals("Unexpected token namespace", "http://www.tokens.org", tokenProvider.getTokenElementNS());
View Full Code Here

TOP

Related Classes of org.picketlink.identity.federation.core.config.TokenProvidersType

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.