001/**
002 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
003 *
004 * Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
005 *
006 * The contents of this file are subject to the terms
007 * of the Common Development and Distribution License
008 * (the License). You may not use this file except in
009 * compliance with the License.
010 *
011 * You can obtain a copy of the License at
012 * https://opensso.dev.java.net/public/CDDLv1.0.html or
013 * opensso/legal/CDDLv1.0.txt
014 * See the License for the specific language governing
015 * permission and limitations under the License.
016 *
017 * When distributing Covered Code, include this CDDL
018 * Header Notice in each file and include the License file
019 * at opensso/legal/CDDLv1.0.txt.
020 * If applicable, add the following below the CDDL Header,
021 * with the fields enclosed by brackets [] replaced by
022 * your own identifying information:
023 * "Portions Copyrighted [year] [name of copyright owner]"
024 *
025 * $Id: SAML2Exception.java,v 1.3 2008/06/25 05:47:45 qcheng Exp $
026 *
027 */
028
029
030package com.sun.identity.saml2.common;
031
032import com.sun.identity.shared.locale.L10NMessageImpl;
033
034
035/**
036 * This class is an extension point for all SAML related exceptions.
037 * This class also handles message localization in SAML exceptions.
038 *
039 * @supported.all.api
040 */
041public class SAML2Exception extends L10NMessageImpl {
042
043    /**
044     * Flag to indicate whether the response has been redirected already
045     */
046    private boolean redirectionDone = false;
047    
048    /**
049     * Constructs a new <code>SAML2Exception</code> without a nested
050     * <code>Throwable</code>.
051     * @param rbName Resource Bundle Name to be used for getting
052     * localized error message.
053     * @param errorCode Key to resource bundle. You can use
054     * <pre>
055     * ResourceBundle rb = ResourceBunde.getBundle (rbName,locale);
056     * String localizedStr = rb.getString(errorCode);
057     * </pre>
058     * @param args arguments to message. If it is not present pass them
059     * as null
060     * 
061     */
062    public SAML2Exception(String rbName, String errorCode, Object[] args) {
063        super(rbName, errorCode, args);
064    }
065    
066    /**
067     * Constructs a new <code>SAML2Exception</code> with the given
068     * message.
069     *
070     * @param message message for this exception. This message can be later
071     * retrieved by <code>getMessage()</code> method.
072     * 
073     */
074    public SAML2Exception(String message) {
075        super(message);
076    }
077    
078    /**
079     * Constructs an <code>SAML2Exception</code> with given
080     * <code>Throwable</code>.
081     *
082     * @param t Exception nested in the new exception.
083     * 
084     */
085    public SAML2Exception(Throwable t) {
086        super(t);
087    }
088
089    /**
090     * Sets redirection done flag.
091     * @param redirectionDone true means that the response has been
092     *     redirected already to another URL, false otherwise.
093     */
094    public void setRedirectionDone(boolean redirectionDone) {
095        this.redirectionDone = redirectionDone;
096    }
097
098    /**
099     * Returns true if the response has been redirected already to another URL,
100     * returns false otherwise. 
101     * @return true if the response has been redirected already to another URL,
102     * returns false otherwise.
103     */
104    public boolean isRedirectionDone() {
105        return redirectionDone;
106    }
107}
108




























































Copyright © 2010-2017, ForgeRock All Rights Reserved.