James Moger
2012-10-18 13417cf9c6eec555b51da49742e47939d2f5715b
src/com/gitblit/models/UserModel.java
@@ -17,8 +17,11 @@
import java.io.Serializable;
import java.security.Principal;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -125,6 +128,21 @@
   }
   
   /**
    * Returns a list of repository permissions for this user exclusive of
    * permissions inherited from team memberships.
    *
    * @return the user's list of permissions
    */
   public List<RepositoryAccessPermission> getRepositoryPermissions() {
      List<RepositoryAccessPermission> list = new ArrayList<RepositoryAccessPermission>();
      for (Map.Entry<String, AccessPermission> entry : permissions.entrySet()) {
         list.add(new RepositoryAccessPermission(entry.getKey(), entry.getValue()));
      }
      Collections.sort(list);
      return list;
   }
   /**
    * Returns true if the user has any type of specified access permission for
    * this repository.
    * 
@@ -217,7 +235,7 @@
      return permission;
   }
   
   private boolean canAccess(RepositoryModel repository, AccessRestrictionType ifRestriction, AccessPermission requirePermission) {
   protected boolean canAccess(RepositoryModel repository, AccessRestrictionType ifRestriction, AccessPermission requirePermission) {
      if (repository.accessRestriction.atLeast(ifRestriction)) {
         AccessPermission permission = getRepositoryPermission(repository);
         return permission.atLeast(requirePermission);
@@ -433,4 +451,9 @@
      }
      return nameVerified && emailVerified;
   }
   public boolean hasBranchPermission(String repositoryName, String branch) {
      // Default UserModel doesn't implement branch-level security. Other Realms (i.e. Gerrit) may override this method.
      return hasRepositoryPermission(repositoryName);
   }
}