added appropriate package into to header
[java-idp.git] / src / edu / internet2 / middleware / shibboleth / hs / HandleEntry.java
1 package edu.internet2.middleware.shibboleth.hs
2
3 import edu.internet2.middleware.shibboleth.*;
4 import edu.internet2.middleware.shibboleth.common.*;
5 import org.opensaml.*;
6 import java.util.*;
7 import HandleException;
8 import org.doomdark.uuid.*;
9
10 /**
11  *  Object all user information is kept in
12  *
13  * @author    Barbara Jensen
14  */
15 public class HandleEntry {
16     /** opaque handle, based off MAC address and time */
17     protected String handle;
18     /** username, passed in from RemoteUser */
19     protected String username;
20     /** authentication type, passed from AuthType */
21     protected String authType;
22     /** instant of handle creation */
23     protected long authInstant;
24     /** instant of handle expiration, based on ticket length */
25     protected long expInstant;
26     
27     /**
28      *  HandleEntry object, created from HandleService
29      *
30      */
31     public HandleEntry ( String username, String authType, 
32                          long ticketLength ) 
33         throws HandleException
34     {
35         if (username == null || username.length() == 0) 
36             throw new HandleException(HandleException.ERR, "HandleEntry() requires username");
37         if (authType == null || authType.length() == 0)
38             throw new HandleException(HandleException.ERR, "HandleEntry() requires authType");
39
40         handle = UUIDGenerator.getInstance().generateRandomBasedUUID().toString();
41         this.username = username;
42         this.authType = authType;
43         this.authInstant= System.currentTimeMillis();
44         this.expInstant = authInstant+ticketLength;
45     }
46
47     /** 
48      *  HandleEntry object, created from all parts 
49      * 
50      */
51     public HandleEntry ( String handle, String username, String authType,
52                          long authInstant, long expInstant ) 
53         throws HandleException 
54     {
55         if (handle == null || handle.length() == 0) 
56             throw new HandleException(HandleException.ERR, "HandleEntry() requires handle");
57         if (username == null || username.length() == 0) 
58             throw new HandleException(HandleException.ERR, "HandleEntry() requires username");
59         if (authType == null || authType.length() == 0)
60             throw new HandleException(HandleException.ERR, "HandleEntry() requires authType");
61         
62         this.handle = handle;
63         this.username = username;
64         this.authType = authType;
65         this.authInstant = authInstant;
66         this.expInstant = expInstant;
67     }
68
69     /** 
70      *  Gets the HandleEntry's handle string 
71      * 
72      */
73     public String getHandle () {
74         return handle;
75     }
76     
77     /**
78      *  Gets the HandleEntry's username 
79      * 
80      */
81     public String getUsername () {
82         return username;
83     }
84
85     /**
86      *  Gets the HandleEntry's authentication type
87      * 
88      */
89     public String getAuthType () {
90         return authType;
91     } 
92
93     /**
94      *  Gets the HandleEntry's creation/authentication date
95      * 
96      */
97     public long getAuthInstant () {
98         return authInstant;
99     }
100
101     /**
102      *  Gets the HandleEntry's expiration date
103      * 
104      */
105     public long getExpInstant () {
106         return expInstant;
107     }
108
109 }
110