1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.acegisecurity.acls.domain;
16
17 import org.acegisecurity.acls.AccessControlEntry;
18 import org.acegisecurity.acls.Acl;
19 import org.acegisecurity.acls.AuditableAccessControlEntry;
20 import org.acegisecurity.acls.Permission;
21 import org.acegisecurity.acls.sid.Sid;
22
23 import org.springframework.util.Assert;
24
25 import java.io.Serializable;
26
27
28
29
30
31
32
33
34 public class AccessControlEntryImpl implements AccessControlEntry, AuditableAccessControlEntry {
35
36
37 private Acl acl;
38 private Permission permission;
39 private Serializable id;
40 private Sid sid;
41 private boolean auditFailure = false;
42 private boolean auditSuccess = false;
43 private boolean granting;
44
45
46
47 public AccessControlEntryImpl(Serializable id, Acl acl, Sid sid, Permission permission, boolean granting,
48 boolean auditSuccess, boolean auditFailure) {
49 Assert.notNull(acl, "Acl required");
50 Assert.notNull(sid, "Sid required");
51 Assert.notNull(permission, "Permission required");
52 this.id = id;
53 this.acl = acl;
54 this.sid = sid;
55 this.permission = permission;
56 this.granting = granting;
57 this.auditSuccess = auditSuccess;
58 this.auditFailure = auditFailure;
59 }
60
61
62
63 public boolean equals(Object arg0) {
64 if (!(arg0 instanceof AccessControlEntryImpl)) {
65 return false;
66 }
67
68 AccessControlEntryImpl rhs = (AccessControlEntryImpl) arg0;
69
70 if ((this.auditFailure != rhs.isAuditFailure()) || (this.auditSuccess != rhs.isAuditSuccess())
71 || (this.granting != rhs.isGranting()) || !this.acl.equals(rhs.getAcl()) || !this.id.equals(rhs.getId())
72 || !this.permission.equals(rhs.getPermission()) || !this.sid.equals(rhs.getSid())) {
73 return false;
74 }
75
76 return true;
77 }
78
79 public Acl getAcl() {
80 return acl;
81 }
82
83 public Serializable getId() {
84 return id;
85 }
86
87 public Permission getPermission() {
88 return permission;
89 }
90
91 public Sid getSid() {
92 return sid;
93 }
94
95 public boolean isAuditFailure() {
96 return auditFailure;
97 }
98
99 public boolean isAuditSuccess() {
100 return auditSuccess;
101 }
102
103 public boolean isGranting() {
104 return granting;
105 }
106
107 void setAuditFailure(boolean auditFailure) {
108 this.auditFailure = auditFailure;
109 }
110
111 void setAuditSuccess(boolean auditSuccess) {
112 this.auditSuccess = auditSuccess;
113 }
114
115 void setPermission(Permission permission) {
116 Assert.notNull(permission, "Permission required");
117 this.permission = permission;
118 }
119
120 public String toString() {
121 StringBuffer sb = new StringBuffer();
122 sb.append("AccessControlEntryImpl[");
123 sb.append("id: ").append(this.id).append("; ");
124 sb.append("granting: ").append(this.granting).append("; ");
125 sb.append("sid: ").append(this.sid).append("; ");
126 sb.append("permission: ").append(this.permission).append("; ");
127 sb.append("auditSuccess: ").append(this.auditSuccess).append("; ");
128 sb.append("auditFailure: ").append(this.auditFailure);
129 sb.append("]");
130
131 return sb.toString();
132 }
133 }