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: ManageNameIDRequest.java,v 1.2 2008/06/25 05:47:57 qcheng Exp $ 026 * 027 */ 028 029 030package com.sun.identity.saml2.protocol; 031 032import com.sun.identity.saml2.protocol.RequestAbstract; 033import com.sun.identity.saml2.protocol.NewEncryptedID; 034import com.sun.identity.saml2.assertion.EncryptedID; 035import com.sun.identity.saml2.assertion.NameID; 036import com.sun.identity.saml2.common.SAML2Exception; 037 038/** 039 * This class represents the ManageNameIDRequestType complex type. 040 * <p>The following schema fragment specifies the expected 041 * content contained within this java content object. 042 * <p> 043 * <pre> 044 * <complexType name="ManageNameIDRequestType"> 045 * <complexContent> 046 * <extension base="{urn:oasis:names:tc:SAML:2.0:protocol}RequestAbstractType"> 047 * <sequence> 048 * <choice> 049 * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}NameID"/> 050 * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}EncryptedID"/> 051 * </choice> 052 * <choice> 053 * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewID"/> 054 * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}NewEncryptedID"/> 055 * <element ref="{urn:oasis:names:tc:SAML:2.0:protocol}Terminate"/> 056 * </choice> 057 * </sequence> 058 * </extension> 059 * </complexContent> 060 * </complexType> 061 * </pre> 062 * 063 * @supported.all.api 064 */ 065public interface ManageNameIDRequest extends RequestAbstract { 066 /** 067 * Returns the value of the <code>newEncryptedID</code> property. 068 * 069 * @return the value of the <code>newEncryptedID</code> property. 070 */ 071 NewEncryptedID getNewEncryptedID(); 072 073 /** 074 * Sets the value of the <code>newEncryptedID</code> property. 075 * 076 * @param value the value of the <code>newEncryptedID</code> property. 077 * @throws SAML2Exception if <code>Object</code> is immutable. 078 */ 079 void setNewEncryptedID(NewEncryptedID value) 080 throws SAML2Exception; 081 082 /** 083 * Returns the value of the <code>encryptedID</code> property. 084 * 085 * @return the value of the <code>encryptedID</code> property. 086 */ 087 EncryptedID getEncryptedID(); 088 089 /** 090 * Sets the value of the <code>encryptedID</code> property. 091 * 092 * @param value the value of the <code>encryptedID</code> property. 093 * @throws SAML2Exception if <code>Object</code> is immutable. 094 */ 095 void setEncryptedID(EncryptedID value) 096 throws SAML2Exception; 097 098 /** 099 * Returns the value of the <code>NewID</code> property. 100 * 101 * @return the value of the <code>NewID</code> property. 102 */ 103 NewID getNewID(); 104 105 /** 106 * Sets the value of the <code>NewID</code> property. 107 * 108 * @param value the value of the <code>NewID</code> property. 109 * @throws SAML2Exception if <code>Object</code> is immutable. 110 */ 111 void setNewID(NewID value) 112 throws SAML2Exception; 113 114 /** 115 * Returns the value of the <code>nameID</code> property. 116 * 117 * @return the value of the <code>nameID</code> property. 118 */ 119 NameID getNameID(); 120 121 /** 122 * Sets the value of the <code>nameID</code> property. 123 * 124 * @param value the value of the <code>nameID</code> property. 125 * @throws SAML2Exception if <code>Object</code> is immutable. 126 */ 127 void setNameID(NameID value) 128 throws SAML2Exception; 129 130 /** 131 * Returns true if this is a terminating request. 132 * 133 * @return true if this is a terminating request. 134 */ 135 boolean getTerminate(); 136 137 /** 138 * Set this request as terminating request. 139 * 140 * @param terminate true to set this request as terminating request. 141 * @throws SAML2Exception if this object is immutable. 142 */ 143 void setTerminate(boolean terminate) 144 throws SAML2Exception; 145}