Annotation of java/classes/org/w3c/jigsaw/acl/AuthUserPrincipal.java, revision 1.2
1.1 bmahe 1: // AuthUserPrincipal.java
1.2 ! ylafon 2: // $Id: AuthUserPrincipal.java,v 1.1 1999/04/27 15:05:47 bmahe Exp $
1.1 bmahe 3: // (c) COPYRIGHT MIT, INRIA and Keio, 1999.
4: // Please first read the full copyright statement in file COPYRIGHT.html
5:
6: package org.w3c.jigsaw.acl;
7:
8: import java.net.InetAddress;
9: import java.security.Principal;
10: import java.util.Hashtable;
11:
12: import org.w3c.jigsaw.auth.AuthUser;
13: import org.w3c.jigsaw.auth.IPMatcher;
14:
15: /**
1.2 ! ylafon 16: * @version $Revision: 1.1 $
1.1 bmahe 17: * @author Benoît Mahé (bmahe@w3.org)
18: */
19: public class AuthUserPrincipal implements AclPrincipal {
1.2 ! ylafon 20:
1.1 bmahe 21: protected String name = null;
22: protected String password = null;
23: protected String realm = null;
24: protected Hashtable values = null;
25: protected IPMatcher ipmatcher = null;
26:
27: public boolean equals(Object another) {
28: if (another instanceof AuthUserPrincipal) {
29: return toString().equals(another.toString());
30: } else {
31: return another.equals(this);
32: }
33: }
34:
35: public String toString() {
36: if (password == null)
37: return name;
38: else
39: return name+":"+password;
40: }
41:
42: public int hashCode() {
43: return toString().hashCode();
44: }
45:
46: public String getName() {
47: return name;
48: }
49:
50: public String getRealm() {
51: return realm;
52: }
53:
54: public String getPassword() {
55: return password;
56: }
57:
58: public void setValue(String name, Object value) {
59: values.put(name, value);
60: }
61:
62: public Object getValue(String name) {
63: return values.get(name);
64: }
65:
66: public boolean matchIP(InetAddress adr) {
67: return (ipmatcher.lookup(adr) == Boolean.TRUE);
68: }
69:
70: public AuthUserPrincipal(AuthUser user, String realm) {
71: this.name = user.getName();
72: this.password = user.getPassword();
73: this.realm = realm;
74: this.ipmatcher = new IPMatcher();
75: this.values = new Hashtable();
76:
77: short ips[][] = user.getIPTemplates();
78: if ( ips != null ) {
79: for (int i = 0 ; i < ips.length ; i++)
80: ipmatcher.add(ips[i], Boolean.TRUE);
81: }
82: }
83:
1.2 ! ylafon 84:
1.1 bmahe 85: }
1.2 ! ylafon 86:
1.1 bmahe 87:
Webmaster