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: Scoping.java,v 1.2 2008/06/25 05:47:58 qcheng Exp $
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
d1b583b519c4e897315db015e4277592af0b4a84Peter Major * Portions Copyrighted 2014 ForgeRock AS.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterpackage com.sun.identity.saml2.protocol;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.saml2.common.SAML2Exception;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport java.util.List;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
d1b583b519c4e897315db015e4277592af0b4a84Peter Major/**
d1b583b519c4e897315db015e4277592af0b4a84Peter Major * This interface defines methods to retrieve Identity Providers and
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * context/limitations related to proxying of the request message.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @supported.all.api
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterpublic interface Scoping {
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Returns the <code>IDPList</code> Object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @return the <code>IDPList</code> object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @see #setIDPList(IDPList)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public IDPList getIDPList();
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Sets the <code>IDPList</code> Object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param idpList the new <code>IDPList</code> object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @throws SAML2Exception if the object is immutable.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @see #getIDPList
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public void setIDPList(IDPList idpList) throws SAML2Exception;
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Returns a list of <code>RequesterID</code> Objects..
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @return list of <code>RequesterID</code> objects.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @see #setRequesterIDs(List)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
d1b583b519c4e897315db015e4277592af0b4a84Peter Major public List<RequesterID> getRequesterIDs();
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Sets a list of <code>RequesterID</code> Objects.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param requesterIDList the list of <code>RequesterID</code> object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @throws SAML2Exception if the object is immutable.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @see #getRequesterIDs
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
d1b583b519c4e897315db015e4277592af0b4a84Peter Major public void setRequesterIDs(List<RequesterID> requesterIDList) throws SAML2Exception;
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Returns the value of <code>ProxyCount</code> attribute.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @return the value of <code>ProxyCount</code> attribute.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @see #setProxyCount(Integer)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public Integer getProxyCount();
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Sets the value of <code>ProxyCount</code> attribute.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param proxyCount new value of <code>ProxyCount</code> attribute.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @throws SAML2Exception if the object is immutable.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @see #getProxyCount
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public void setProxyCount(Integer proxyCount) throws SAML2Exception;
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Returns a String representation of this Object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @return a String representation of this Object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @throws SAML2Exception if cannot create String object
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String toXMLString() throws SAML2Exception;
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Returns a String representation of this Object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param includeNSPrefix determines whether or not the namespace
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * qualifier is prepended to the Element when converted
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param declareNS determines whether or not the namespace is declared
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * within the Element.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @return the String representation of this Object.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @throws SAML2Exception if String object cannot be created.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster **/
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public String toXMLString(boolean includeNSPrefix,boolean declareNS)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws SAML2Exception;
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
d1b583b519c4e897315db015e4277592af0b4a84Peter Major * Makes this object immutable.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public void makeImmutable() ;
d1b583b519c4e897315db015e4277592af0b4a84Peter Major
d1b583b519c4e897315db015e4277592af0b4a84Peter Major /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Returns true if object is mutable.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @return true if object is mutable.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public boolean isMutable();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster}