James Moger
2012-10-29 092f0a62302e87f44403ba24fc519c65534dbfff
src/com/gitblit/models/RegistrantAccessPermission.java
@@ -18,6 +18,7 @@
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 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 @@
   }
   
   @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);
   }