/* * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved * * The contents of this file are subject to the terms * of the Common Development and Distribution License * (the License). You may not use this file except in * compliance with the License. * * You can obtain a copy of the License at * https://opensso.dev.java.net/public/CDDLv1.0.html or * opensso/legal/CDDLv1.0.txt * See the License for the specific language governing * permission and limitations under the License. * * When distributing Covered Code, include this CDDL * Header Notice in each file and include the License file * at opensso/legal/CDDLv1.0.txt. * If applicable, add the following below the CDDL Header, * with the fields enclosed by brackets [] replaced by * your own identifying information: * "Portions Copyrighted [year] [name of copyright owner]" * * $Id: AttributeStatement.java,v 1.2 2008/06/25 05:47:40 qcheng Exp $ * * Portions Copyrighted 2015 ForgeRock AS. */ package com.sun.identity.saml2.assertion; import java.util.List; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.sun.identity.saml2.assertion.impl.AttributeStatementImpl; import com.sun.identity.saml2.assertion.impl.SubjectImpl; import com.sun.identity.saml2.common.SAML2Exception; /** * The AttributeStatement element describes a statement by * the SAML authority asserting that the assertion subject is associated with * the specified attributes. It is of type AttributeStatementType. *

*

 * <complexType name="AttributeStatementType">
 *   <complexContent>
 *     <extension base="{urn:oasis:names:tc:SAML:2.0:assertion}
 *     StatementAbstractType">
 *       <choice maxOccurs="unbounded">
 *         <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute"/>
 *         <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}
 *         EncryptedAttribute"/>
 *       </choice>
 *     </extension>
 *   </complexContent>
 * </complexType>
 * 
* @supported.all.api */ @JsonDeserialize(as=AttributeStatementImpl.class) public interface AttributeStatement extends Statement { /** * Returns Attribute(s) of the statement. * * @return List of Attribute(s) in the statement. * @see #setAttribute(List) */ List getAttribute(); /** * Sets Attribute(s) of the statement. * * @param value List of new Attribute(s). * @throws SAML2Exception if the object is immutable. * @see #getAttribute() */ void setAttribute(List value) throws SAML2Exception; /** * Returns EncryptedAttribute(s) of the statement. * * @return List of EncryptedAttribute(s) in the statement. * @see #setEncryptedAttribute(List) */ List getEncryptedAttribute(); /** * Sets EncryptedAttribute(s) of the statement. * * @param value List of new EncryptedAttribute(s). * @throws SAML2Exception if the object is immutable. * @see #getEncryptedAttribute() */ void setEncryptedAttribute(List value) throws SAML2Exception; }