summaryrefslogtreecommitdiffstats
path: root/src/com/gitblit/models/RegistrantAccessPermission.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/gitblit/models/RegistrantAccessPermission.java')
-rw-r--r--src/com/gitblit/models/RegistrantAccessPermission.java36
1 files changed, 28 insertions, 8 deletions
diff --git a/src/com/gitblit/models/RegistrantAccessPermission.java b/src/com/gitblit/models/RegistrantAccessPermission.java
index 4a560d43..7346d310 100644
--- a/src/com/gitblit/models/RegistrantAccessPermission.java
+++ b/src/com/gitblit/models/RegistrantAccessPermission.java
@@ -18,6 +18,7 @@ package com.gitblit.models;
import java.io.Serializable;
import com.gitblit.Constants.AccessPermission;
+import com.gitblit.Constants.PermissionType;
import com.gitblit.Constants.RegistrantType;
import com.gitblit.utils.StringUtils;
@@ -32,23 +33,27 @@ public class RegistrantAccessPermission implements Serializable, Comparable<Regi
public String registrant;
public AccessPermission permission;
- public RegistrantType type;
- public boolean isExplicit;
+ public RegistrantType registrantType;
+ public PermissionType permissionType;
+ public boolean isEditable;
- public RegistrantAccessPermission() {
- isExplicit = true;
+ public RegistrantAccessPermission(RegistrantType registrantType) {
+ this.registrantType = registrantType;
+ this.permissionType = PermissionType.EXPLICIT;
+ this.isEditable = true;
}
- public RegistrantAccessPermission(String registrant, AccessPermission permission, boolean isExplicit, RegistrantType type) {
+ public RegistrantAccessPermission(String registrant, AccessPermission permission, PermissionType permissionType, RegistrantType registrantType, boolean isEditable) {
this.registrant = registrant;
this.permission = permission;
- this.isExplicit = isExplicit;
- this.type = type;
+ this.permissionType = permissionType;
+ this.registrantType = registrantType;
+ this.isEditable = isEditable;
}
@Override
public int compareTo(RegistrantAccessPermission p) {
- switch (type) {
+ switch (registrantType) {
case REPOSITORY:
return StringUtils.compareRepositoryNames(registrant, p.registrant);
default:
@@ -57,6 +62,21 @@ public class RegistrantAccessPermission implements Serializable, Comparable<Regi
}
@Override
+ public int hashCode() {
+ return registrant.hashCode();
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (o instanceof RegistrantAccessPermission) {
+ RegistrantAccessPermission p = (RegistrantAccessPermission) o;
+ return registrant.equals(p.registrant);
+ }
+
+ return false;
+ }
+
+ @Override
public String toString() {
return permission.asRole(registrant);
}