001: /*
002: * $Id: RequestSecurityTokenResponse.java,v 1.2 2007/05/29 22:11:30 ofung Exp $
003: */
004:
005: /*
006: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
007: *
008: * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
009: *
010: * The contents of this file are subject to the terms of either the GNU
011: * General Public License Version 2 only ("GPL") or the Common Development
012: * and Distribution License("CDDL") (collectively, the "License"). You
013: * may not use this file except in compliance with the License. You can obtain
014: * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
015: * or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
016: * language governing permissions and limitations under the License.
017: *
018: * When distributing the software, include this License Header Notice in each
019: * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
020: * Sun designates this particular file as subject to the "Classpath" exception
021: * as provided by Sun in the GPL Version 2 section of the License file that
022: * accompanied this code. If applicable, add the following below the License
023: * Header, with the fields enclosed by brackets [] replaced by your own
024: * identifying information: "Portions Copyrighted [year]
025: * [name of copyright owner]"
026: *
027: * Contributor(s):
028: *
029: * If you wish your version of this file to be governed by only the CDDL or
030: * only the GPL Version 2, indicate your decision by adding "[Contributor]
031: * elects to include this software in this distribution under the [CDDL or GPL
032: * Version 2] license." If you don't indicate a single choice of license, a
033: * recipient has the option to distribute your version of this file under
034: * either the CDDL, the GPL Version 2 or to extend the choice of license to
035: * its licensees as provided above. However, if you add GPL Version 2 code
036: * and therefore, elected the GPL Version 2 license, then the option applies
037: * only if the new code is made subject to such option by the copyright
038: * holder.
039: */
040:
041: package com.sun.xml.ws.security.trust.elements;
042:
043: import java.util.List;
044: import java.util.Map;
045: import javax.xml.namespace.QName;
046:
047: /**
048: * @author Kumar Jayanti
049: */
050: public interface RequestSecurityTokenResponse extends
051: WSTrustElementBase {
052: /**
053: * Gets the value of the any property.
054: *
055: * <p>
056: * This accessor method returns a reference to the live list,
057: * not a snapshot. Therefore any modification you make to the
058: * returned list will be present inside the JAXB object.
059: * This is why there is not a <CODE>set</CODE> method for the any property.
060: *
061: * <p>
062: * For example, to add a new item, do as follows:
063: * <pre>
064: * getAny().add(newItem);
065: * </pre>
066: *
067: *
068: * <p>
069: * Objects of the following type(s) are allowed in the list
070: * {@link Element }
071: * {@link Object }
072: *
073: *
074: */
075: List<Object> getAny();
076:
077: /**
078: * Gets the value of the context property.
079: *
080: * @return
081: * possible object is
082: * {@link String }
083: *
084: */
085: String getContext();
086:
087: /**
088: * Gets a map that contains attributes that aren't bound to any typed property on this class.
089: *
090: * <p>
091: * the map is keyed by the name of the attribute and
092: * the value is the string value of the attribute.
093: *
094: * the map returned by this method is live, and you can add new attribute
095: * by updating the map directly. Because of this design, there's no setter.
096: *
097: *
098: * @return
099: * always non-null
100: */
101: Map<QName, String> getOtherAttributes();
102:
103: /**
104: * set a SignChallengeResponse
105: */
106: void setSignChallengeResponse(SignChallengeResponse challenge);
107:
108: /**
109: * get SignChallengeResponse element if any, null otherwise
110: */
111: SignChallengeResponse getSignChallengeResponse();
112:
113: /**
114: * set an Authenticator
115: */
116: void setAuthenticator(Authenticator authenticator);
117:
118: /**
119: * get Authenticator if set, null otherwise
120: */
121: Authenticator getAuthenticator();
122:
123: /**
124: * Set the requestedProofToken on the security token response
125: *
126: * @param proofToken
127: */
128: void setRequestedProofToken(RequestedProofToken proofToken);
129:
130: /**
131: * Get the requestedProofToken
132: *
133: * @return RequestedProofToken, null if none present
134: */
135: RequestedProofToken getRequestedProofToken();
136:
137: /**
138: * Set the requestedSecurityToken on the security token response
139: *
140: * @param securityToken
141: */
142: void setRequestedSecurityToken(RequestedSecurityToken securityToken);
143:
144: /**
145: * Get the requested Security Token
146: *
147: * @return RequestedSecurityToken
148: */
149: RequestedSecurityToken getRequestedSecurityToken();
150:
151: /**
152: * Set the requestedAttachedReference on the security token response
153: * @param reference
154: */
155: void setRequestedAttachedReference(
156: RequestedAttachedReference reference);
157:
158: /**
159: * Get the requestedAttachedReference.
160: *
161: * @return RequestedAttachedReference, null if none present
162: */
163: RequestedAttachedReference getRequestedAttachedReference();
164:
165: /**
166: * Set the requestedUnattachedReference on the security token response
167: * @param reference
168: */
169: void setRequestedUnattachedReference(
170: RequestedUnattachedReference reference);
171:
172: /**
173: * Get the requestedUnattachedReference.
174: *
175: * @return RequestedUnattachedReference, null if none present
176: */
177: RequestedUnattachedReference getRequestedUnattachedReference();
178:
179: void setRequestedTokenCancelled(RequestedTokenCancelled rtc);
180:
181: RequestedTokenCancelled getRequestedTokenCancelled();
182: }
|