@Override
 public Collection<User> getPossibleOwners(Node item) {
   if (OwnershipPlugin.getInstance().isRequiresConfigureRights()) {
     IUserFilter filter = new AccessRightsFilter(item, Computer.CONFIGURE);
     return UserCollectionFilter.filterUsers(User.getAll(), true, filter);
   } else {
     return User.getAll();
   }
 }
예제 #2
0
 @Override
 protected void compute() throws Exception {
   int itemCount = 0;
   for (Item item : items) {
     for (Job<?, ?> job : item.getAllJobs()) {
       if (job instanceof AbstractProject) {
         AbstractProject<?, ?> p = (AbstractProject) job;
         RunList<? extends AbstractBuild<?, ?>> builds = p.getBuilds();
         int buildCount = 0;
         for (AbstractBuild<?, ?> build : builds) {
           if (canceled()) {
             return;
           }
           for (ChangeLogSet.Entry entry : build.getChangeSet()) {
             User user = entry.getAuthor();
             UserInfo info = users.get(user);
             if (info == null) {
               UserInfo userInfo = new UserInfo(user, p, build.getTimestamp());
               userInfo.avatar = UserAvatarResolver.resolveOrNull(user, iconSize);
               synchronized (this) {
                 users.put(user, userInfo);
                 modified.add(user);
               }
             } else if (info.getLastChange().before(build.getTimestamp())) {
               synchronized (this) {
                 info.project = p;
                 info.lastChange = build.getTimestamp();
                 modified.add(user);
               }
             }
           }
           // TODO consider also adding the user of the UserCause when applicable
           buildCount++;
           progress((itemCount + 1.0 * buildCount / builds.size()) / (items.size() + 1));
         }
       }
     }
     itemCount++;
     progress(1.0 * itemCount / (items.size() + /* handling User.getAll */ 1));
   }
   if (unknown != null) {
     if (canceled()) {
       return;
     }
     for (User u : User.getAll()) { // TODO nice to have a method to iterate these lazily
       if (u == unknown) {
         continue;
       }
       if (!users.containsKey(u)) {
         UserInfo userInfo = new UserInfo(u, null, null);
         userInfo.avatar = UserAvatarResolver.resolveOrNull(u, iconSize);
         synchronized (this) {
           users.put(u, userInfo);
           modified.add(u);
         }
       }
     }
   }
 }
 /**
  * All users who can login to the system.
  */
 public List<User> getAllUsers() {
     List<User> r = new ArrayList<User>();
     for (User u : User.getAll()) {
         if(u.getProperty(Details.class)!=null)
             r.add(u);
     }
     Collections.sort(r);
     return r;
 }
예제 #4
0
파일: View.java 프로젝트: zlosch/jenkins
 public People(Jenkins parent) {
   this.parent = parent;
   // for Hudson, really load all users
   Map<User, UserInfo> users = getUserInfo(parent.getItems());
   User unknown = User.getUnknown();
   for (User u : User.getAll()) {
     if (u == unknown) continue; // skip the special 'unknown' user
     if (!users.containsKey(u)) users.put(u, new UserInfo(u, null, null));
   }
   this.users = toList(users);
 }
  @Override
  public WwpassIdentity loadUserByUsername(String puid)
      throws UsernameNotFoundException, DataAccessException {
    Collection<User> all = User.getAll();

    for (User u : all) {
      WwpassIdentity p = u.getProperty(WwpassIdentity.class);
      if (puid.equals(p != null ? p.getPuid() : null)) {
        return p;
      }
    }

    throw new UsernameNotFoundException("There is no any user with: " + puid);
  }
 /**
  * Computes if this Jenkins has some user accounts configured.
  *
  * <p>This is used to check for the initial
  */
 private static boolean hasSomeUser() {
   for (User u : User.getAll()) if (u.getProperty(WwpassIdentity.class) != null) return true;
   return false;
 }
예제 #7
0
파일: View.java 프로젝트: alexkogon/jenkins
 @Override
 protected void compute() throws Exception {
   int itemCount = 0;
   for (Item item : items) {
     for (Job<?, ?> job : item.getAllJobs()) {
       if (job instanceof AbstractProject) {
         AbstractProject<?, ?> p = (AbstractProject) job;
         RunList<? extends AbstractBuild<?, ?>> builds = p.getBuilds();
         int buildCount = 0;
         for (AbstractBuild<?, ?> build : builds) {
           if (canceled()) {
             return;
           }
           for (ChangeLogSet.Entry entry : build.getChangeSet()) {
             User user = entry.getAuthor();
             UserInfo info = users.get(user);
             if (info == null) {
               UserInfo userInfo = new UserInfo(user, p, build.getTimestamp());
               userInfo.avatar = UserAvatarResolver.resolveOrNull(user, iconSize);
               synchronized (this) {
                 users.put(user, userInfo);
                 modified.add(user);
               }
             } else if (info.getLastChange().before(build.getTimestamp())) {
               synchronized (this) {
                 info.project = p;
                 info.lastChange = build.getTimestamp();
                 modified.add(user);
               }
             }
           }
           // TODO consider also adding the user of the UserCause when applicable
           buildCount++;
           // TODO this defeats lazy-loading. Should rather do a breadth-first search, as in
           // hudson.plugins.view.dashboard.builds.LatestBuilds
           // (though currently there is no quick implementation of RunMap.size() ~
           // idOnDisk.size(), which would be needed for proper progress)
           progress((itemCount + 1.0 * buildCount / builds.size()) / (items.size() + 1));
         }
       }
     }
     itemCount++;
     progress(1.0 * itemCount / (items.size() + /* handling User.getAll */ 1));
   }
   if (unknown != null) {
     if (canceled()) {
       return;
     }
     for (User u : User.getAll()) { // TODO nice to have a method to iterate these lazily
       if (canceled()) {
         return;
       }
       if (u == unknown) {
         continue;
       }
       if (!users.containsKey(u)) {
         UserInfo userInfo = new UserInfo(u, null, null);
         userInfo.avatar = UserAvatarResolver.resolveOrNull(u, iconSize);
         synchronized (this) {
           users.put(u, userInfo);
           modified.add(u);
         }
       }
     }
   }
 }