James Moger
2011-05-24 56c549e384b1a648c77bbd09a2cc77976e8a64de
src/com/gitblit/wicket/models/UserModel.java
@@ -4,15 +4,12 @@
import java.util.ArrayList;
import java.util.List;
import com.gitblit.Constants.AccessRestrictionType;
public class UserModel implements Serializable {
   private static final long serialVersionUID = 1L;
   private String username;
   private String password;
   private String cookie;
   private boolean canAdmin = false;
   private List<String> repositories = new ArrayList<String>();
@@ -39,35 +36,9 @@
   public boolean canAdmin() {
      return canAdmin;
   }
   public boolean canClone(RepositoryModel repository) {
      return canAccess(repository, AccessRestrictionType.CLONE);
   }
   public boolean canPush(RepositoryModel repository) {
      return canAccess(repository, AccessRestrictionType.PUSH);
   }
   public boolean canView(RepositoryModel repository) {
      return canAccess(repository, AccessRestrictionType.VIEW);
   }
   private boolean canAccess(RepositoryModel repository, AccessRestrictionType minimum) {
      if (repository.accessRestriction.atLeast(minimum)) {
         // repository is restricted, must check roles
         return canAdmin || repositories.contains(repository.name);
      } else {
         // repository is not restricted
         return true;
      }
   }
   public void setCookie(String cookie) {
      this.cookie = cookie;
   }
   public String getCookie() {
      return cookie;
   public boolean canAccessRepository(String repositoryName) {
      return canAdmin || repositories.contains(repositoryName);
   }
   public void setRepositories(List<String> repositories) {
@@ -83,6 +54,7 @@
      return repositories;
   }
   @Override
   public String toString() {
      return username;
   }