James Moger
2011-11-11 c2fe08bb91494d3ce9dae60ed89f29bb0057bbf8
src/com/gitblit/models/UserModel.java
@@ -20,6 +20,8 @@
import java.util.HashSet;
import java.util.Set;
import com.gitblit.utils.StringUtils;
/**
 * UserModel is a serializable model class that represents a user and the user's
 * restricted repository memberships. Instances of UserModels are also used as
@@ -28,7 +30,7 @@
 * @author James Moger
 * 
 */
public class UserModel implements Principal, Serializable {
public class UserModel implements Principal, Serializable, Comparable<UserModel> {
   private static final long serialVersionUID = 1L;
@@ -43,8 +45,22 @@
      this.username = username;
   }
   /**
    * This method does not take into consideration Ownership where the
    * administrator has not explicitly granted access to the owner.
    *
    * @param repositoryName
    * @return
    */
   @Deprecated
   public boolean canAccessRepository(String repositoryName) {
      return canAdmin || repositories.contains(repositoryName.toLowerCase());
   }
   public boolean canAccessRepository(RepositoryModel repository) {
      boolean isOwner = !StringUtils.isEmpty(repository.owner)
            && repository.owner.equals(username);
      return canAdmin || isOwner || repositories.contains(repository.name.toLowerCase());
   }
   public void addRepository(String name) {
@@ -60,4 +76,9 @@
   public String toString() {
      return username;
   }
   @Override
   public int compareTo(UserModel o) {
      return username.compareTo(o.username);
   }
}