a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster/**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * The contents of this file are subject to the terms
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * of the Common Development and Distribution License
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * (the License). You may not use this file except in
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * compliance with the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * You can obtain a copy of the License at
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * https://opensso.dev.java.net/public/CDDLv1.0.html or
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * opensso/legal/CDDLv1.0.txt
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * See the License for the specific language governing
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * permission and limitations under the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * When distributing Covered Code, include this CDDL
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Header Notice in each file and include the License file
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * at opensso/legal/CDDLv1.0.txt.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * If applicable, add the following below the CDDL Header,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * with the fields enclosed by brackets [] replaced by
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * your own identifying information:
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * "Portions Copyrighted [year] [name of copyright owner]"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * $Id: AssertionManagerImpl.java,v 1.3 2008/08/07 21:41:35 hengming Exp $
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterpackage com.sun.identity.saml;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport java.util.*;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml.common.SAMLUtils;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml.assertion.Assertion;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml.assertion.Attribute;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml.assertion.AssertionIDReference;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml.protocol.AssertionArtifact;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.shared.xml.XMLUtils;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.shared.encode.Base64;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml.common.SAMLException;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.plugin.session.SessionException;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.plugin.session.SessionManager;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.plugin.session.SessionProvider;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterpublic class AssertionManagerImpl implements AssertionManagerIF {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private static AssertionManager assertionManager;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private static Object lock = new Object();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Checks for exceptions during initialization.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private static void checkInitialization() throws SAMLException {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (assertionManager == null) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster synchronized(lock) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (assertionManager == null) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster assertionManager = AssertionManager.getInstance();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (SAMLException samle) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster // This should not happen . Write to error.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug.error(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "AssertionManagerImpl: Unable to get "
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster + "AssertionManager", samle);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throw(samle);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public void checkForLocal() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster AssertionManagerClient.isLocal = true;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String createAssertion(String ssoToken) throws SAMLException {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Object token = null;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SessionProvider sessionProvider = SessionManager.getProvider();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster token = sessionProvider.getSession(ssoToken);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (SessionException ssoe) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (SAMLUtils.debug.messageEnabled()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug.message(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "AssertionManagerImpl:createAssertion(SSO) " + ssoe);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throw (new SAMLException(ssoe.getMessage()));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.createAssertion(token);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster // a cannot be null since if a cannot be returned, SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster // would be thrown
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String createAssertion2(String ssoToken, List attributes)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Object token = null;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SessionProvider sessionProvider = SessionManager.getProvider();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster token = sessionProvider.getSession(ssoToken);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (SessionException ssoe) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (SAMLUtils.debug.messageEnabled()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug.message(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "AssertionManagerImpl:createAssertion(SSO + attrs) " +
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ssoe);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throw (new SAMLException(ssoe.getMessage()));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LinkedList ll = new LinkedList();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster for (Iterator iter = attributes.iterator(); iter.hasNext();) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ll.add(new Attribute(XMLUtils.toDOMDocument((String)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster iter.next(), SAMLUtils.debug).getDocumentElement()));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.createAssertion(token, ll);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String createAssertionArtifact(String assertion, String target)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = new Assertion(XMLUtils.toDOMDocument(assertion,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug).getDocumentElement());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster // no need to check null since SAMLException would be thrown if
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster // there is any error.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster AssertionArtifact aa = assertionManager.createAssertionArtifact(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster a, SAMLUtils.byteArrayToString(Base64.decode(target)));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (aa.getAssertionArtifact());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String getAssertion(String artifact, Set destID)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Set destSet = new HashSet();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Iterator it = destID.iterator();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster while (it.hasNext()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster destSet.add(SAMLUtils.byteArrayToString(Base64.decode((
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (String) it.next()))));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.getAssertion(new AssertionArtifact(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster artifact), destSet);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String getAssertion2(String artifact, String destID)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.getAssertion(new AssertionArtifact(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster artifact), SAMLUtils.byteArrayToString(Base64.decode(destID)));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String getAssertionByIdRef(String idref, Set destID)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Set destSet = new HashSet();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Iterator it = destID.iterator();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster while (it.hasNext()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster destSet.add(SAMLUtils.byteArrayToString(Base64.decode((
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (String) it.next()))));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.getAssertion(new AssertionIDReference(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster idref), destSet);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String getAssertionByIdRef2(String idref, String destID)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.getAssertion(new AssertionIDReference(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster idref), SAMLUtils.byteArrayToString(Base64.decode(destID)));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String getAssertionByIdRefToken(String idref, String ssoToken)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAMLException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Object token = null;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SessionProvider sessionProvider = SessionManager.getProvider();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster token = sessionProvider.getSession(ssoToken);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (SessionException ssoe) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (SAMLUtils.debug.messageEnabled()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug.message(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "AssertionManagerImpl:getAssertionByIdRefToken: " + ssoe);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throw (new SAMLException(ssoe.getMessage()));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Assertion a = assertionManager.getAssertion(new AssertionIDReference(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster idref), token);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (a.toString(true, true));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public Set getAssertionArtifacts(String ssoToken) throws SAMLException {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SessionProvider sessionProvider = SessionManager.getProvider();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Object token = sessionProvider.getSession(ssoToken);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (assertionManager.getAssertionArtifacts(token));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (SessionException ssoe) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (SAMLUtils.debug.messageEnabled()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug.message(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "AssertionManagerImpl:getAssertionArtifacts: " + ssoe);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throw (new SAMLException(ssoe.getMessage()));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public Set getAssertions(String ssoToken) throws SAMLException {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster checkInitialization();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SessionProvider sessionProvider = SessionManager.getProvider();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Object token = sessionProvider.getSession(ssoToken);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return (assertionManager.getAssertions(token));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (SessionException ssoe) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (SAMLUtils.debug.messageEnabled()) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SAMLUtils.debug.message(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "AssertionManagerImpl:getAssertions: " + ssoe);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throw (new SAMLException(ssoe.getMessage()));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster}