1 package org.eclipse.jetty.security;
2
3 import java.security.Principal;
4
5 import org.eclipse.jetty.http.security.B64Code;
6
7 public class SpnegoUserPrincipal implements Principal
8 {
9 private final String _name;
10 private byte[] _token;
11 private String _encodedToken;
12
13 public SpnegoUserPrincipal( String name, String encodedToken )
14 {
15 _name = name;
16 _encodedToken = encodedToken;
17 }
18
19 public SpnegoUserPrincipal( String name, byte[] token )
20 {
21 _name = name;
22 _token = token;
23 }
24
25 public String getName()
26 {
27 return _name;
28 }
29
30 public byte[] getToken()
31 {
32 if ( _token == null )
33 {
34 _token = B64Code.decode(_encodedToken);
35 }
36 return _token;
37 }
38
39 public String getEncodedToken()
40 {
41 if ( _encodedToken == null )
42 {
43 _encodedToken = new String(B64Code.encode(_token,true));
44 }
45 return _encodedToken;
46 }
47 }