1 /* 2 * Copyright 2009 University Corporation for Advanced Internet Development, Inc. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package org.opensaml.samlext.saml2delrestrict; 18 19 import javax.xml.namespace.QName; 20 21 import org.joda.time.DateTime; 22 import org.opensaml.common.SAMLObject; 23 import org.opensaml.common.xml.SAMLConstants; 24 import org.opensaml.saml2.core.BaseID; 25 import org.opensaml.saml2.core.EncryptedID; 26 import org.opensaml.saml2.core.NameID; 27 28 /** 29 * SAML 2.0 Condition for Delegation Restriction - Delegate element. 30 */ 31 public interface Delegate extends SAMLObject { 32 33 /** Element local name. */ 34 public static final String DEFAULT_ELEMENT_LOCAL_NAME = "Delegate"; 35 36 /** Default element name. */ 37 public static final QName DEFAULT_ELEMENT_NAME = 38 new QName(SAMLConstants.SAML20DEL_NS, DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20DEL_PREFIX); 39 40 /** Local name of the XSI type. */ 41 public static final String TYPE_LOCAL_NAME = "DelegateType"; 42 43 /** QName of the XSI type. */ 44 public static final QName TYPE_NAME = 45 new QName(SAMLConstants.SAML20DEL_NS, TYPE_LOCAL_NAME, SAMLConstants.SAML20DEL_PREFIX); 46 47 /** DelegationInstant attribute name. */ 48 public static final String DELEGATION_INSTANT_ATTRIB_NAME = "DelegationInstant"; 49 50 /** ConfirmationMethod attribute name. */ 51 public static final String CONFIRMATION_METHOD_ATTRIB_NAME = "ConfirmationMethod"; 52 53 54 /** 55 * Gets the BaseID child element of the delegate. 56 * 57 * @return the base identifier of the delegate 58 */ 59 public BaseID getBaseID(); 60 61 /** 62 * Sets the BaseID child element of the delegate. 63 * 64 * @param newBaseID the base identifier of the delegate 65 */ 66 public void setBaseID(BaseID newBaseID); 67 68 /** 69 * Gets the NameID child element of the delegate. 70 * 71 * @return the name identifier of the principal for this request 72 */ 73 public NameID getNameID(); 74 75 /** 76 * Sets the NameID child element of the delegate. 77 * 78 * @param newNameID the name identifier of the delegate 79 */ 80 public void setNameID(NameID newNameID); 81 82 /** 83 * Gets the EncryptedID child element of the delegate. 84 * 85 * @return the encrypted name identifier of the delegate 86 */ 87 public EncryptedID getEncryptedID(); 88 89 /** 90 * Sets the EncryptedID child element of the delegate. 91 * 92 * @param newEncryptedID the new encrypted name identifier of the delegate 93 */ 94 public void setEncryptedID(EncryptedID newEncryptedID); 95 96 /** 97 * Get the delegation instant attribute value. 98 * 99 * @return the delegation instant 100 */ 101 public DateTime getDelegationInstant(); 102 103 /** 104 * Set the delegation instant attribute value. 105 * 106 * @param newInstant the new delegation instant 107 */ 108 public void setDelegationInstant(DateTime newInstant); 109 110 /** 111 * Get the confirmation method attribute value. 112 * 113 * @return the confirmation method 114 */ 115 public String getConfirmationMethod(); 116 117 /** 118 * Set the confirmation method attribute value. 119 * 120 * @param newMethod the new confirmation method 121 */ 122 public void setConfirmationMethod(String newMethod); 123 124 }