| | |
| | | import java.io.Serializable; |
| | | |
| | | import com.gitblit.Constants.AccessPermission; |
| | | import com.gitblit.Constants.PermissionType; |
| | | import com.gitblit.Constants.RegistrantType; |
| | | import com.gitblit.utils.StringUtils; |
| | | |
| | |
| | | |
| | | public String registrant; |
| | | public AccessPermission permission; |
| | | public RegistrantType type; |
| | | |
| | | public RegistrantType registrantType; |
| | | public PermissionType permissionType; |
| | | public boolean mutable; |
| | | public String source; |
| | | |
| | | public RegistrantAccessPermission() { |
| | | } |
| | | |
| | | public RegistrantAccessPermission(RegistrantType registrantType) { |
| | | this.registrantType = registrantType; |
| | | this.permissionType = PermissionType.EXPLICIT; |
| | | this.mutable = true; |
| | | } |
| | | |
| | | public RegistrantAccessPermission(String registrant, AccessPermission permission, RegistrantType type) { |
| | | public RegistrantAccessPermission(String registrant, AccessPermission permission, PermissionType permissionType, RegistrantType registrantType, String source, boolean mutable) { |
| | | this.registrant = registrant; |
| | | this.permission = permission; |
| | | this.type = type; |
| | | this.permissionType = permissionType; |
| | | this.registrantType = registrantType; |
| | | this.source = source; |
| | | this.mutable = mutable; |
| | | } |
| | | |
| | | public boolean isAdmin() { |
| | | return PermissionType.ADMINISTRATOR.equals(permissionType); |
| | | } |
| | | |
| | | public boolean isOwner() { |
| | | return PermissionType.OWNER.equals(permissionType); |
| | | } |
| | | |
| | | public boolean isMissing() { |
| | | return PermissionType.MISSING.equals(permissionType); |
| | | } |
| | | |
| | | @Override |
| | | public int compareTo(RegistrantAccessPermission p) { |
| | | switch (type) { |
| | | switch (registrantType) { |
| | | case REPOSITORY: |
| | | return StringUtils.compareRepositoryNames(registrant, p.registrant); |
| | | default: |
| | |
| | | } |
| | | |
| | | @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); |
| | | } |