1 /** 2 * Copyright 2005-2014 The Kuali Foundation 3 * 4 * Licensed under the Educational Community 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.opensource.org/licenses/ecl2.php 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 package org.kuali.rice.kim.client.acegi; 17 18 import java.util.List; 19 20 import org.acegisecurity.providers.cas.TicketResponse; 21 22 23 /** 24 * Adds <code>distributedSessionToken</code> to the 25 * <code>TicketResponse</code>. 26 * 27 * @author Kuali Rice Team (rice.collab@kuali.org) 28 * 29 */ 30 public class KualiTicketResponse extends TicketResponse{ 31 //~ Instance fields ================================================================================================ 32 33 private String distributedSessionToken; 34 35 //~ Constructors =================================================================================================== 36 37 /** 38 * Constructor. 39 * 40 * <P> 41 * If <code>null</code> is passed into the <code>proxyList</code> or 42 * <code>proxyGrantingTicketIou</code>, suitable defaults are established. 43 * However, <code>null</code> cannot be passed for the <code>user</code> 44 * or <code>distributedSessionToken</code>arguments. 45 * </p> 46 * 47 * @param user the user as indicated by CAS (cannot be <code>null</code> or 48 * an empty <code>String</code>) 49 * @param proxyList as provided by CAS (may be <code>null</code>) 50 * @param proxyGrantingTicketIou as provided by CAS (may be 51 * <code>null</code>) 52 * @param distributedSessionToken as provided by CAS (may be 53 * <code>null</code>) 54 * 55 * @throws IllegalArgumentException DOCUMENT ME! 56 */ 57 public KualiTicketResponse(String user, List proxyList, String proxyGrantingTicketIou, String distributedSessionToken) { 58 super(user,proxyList,proxyGrantingTicketIou); 59 60 if ((distributedSessionToken == null) || "".equals(distributedSessionToken)) { 61 throw new IllegalArgumentException("Cannot pass null or empty String for distributedSessionToken"); 62 } 63 64 this.distributedSessionToken = distributedSessionToken; 65 } 66 67 //~ Methods ======================================================================================================== 68 69 70 /** 71 * Returns the distributed session token 72 * 73 * @return 74 */ 75 public String getDistributedSessionToken() { 76 return distributedSessionToken; 77 } 78 79 public String toString() { 80 StringBuffer sb = new StringBuffer(); 81 sb.append(super.toString()); 82 sb.append("; SessionID: " + this.distributedSessionToken); 83 84 return sb.toString(); 85 } 86 }