/** * Get all users as a map from user name to user * @param pm PersistenceManager instance * @return map of user names to user data for each user */ private Map<String, MSentryUser> getUserNameToUserMap(PersistenceManager pm) { Query query = pm.newQuery(MSentryUser.class); @SuppressWarnings("unchecked") List<MSentryUser> users = (List<MSentryUser>) query.execute(); if (users.isEmpty()) { return Collections.emptyMap(); } Map<String, MSentryUser> existUsersMap = new HashMap<>(users.size()); // change the List<MSentryUser> -> Map<userName, MSentryUser> for (MSentryUser user : users) { existUsersMap.put(user.getUserName(), user); } return existUsersMap; }
private Map<String, Set<String>> getUserRolesMap(Collection<MSentryRole> mSentryRoles) { if (mSentryRoles.isEmpty()) { return Collections.emptyMap(); } Map<String, Set<String>> userRolesMap = new HashMap<>(); // change the List<MSentryRole> -> Map<userName, Set<roleName>> for (MSentryRole mSentryRole : mSentryRoles) { Set<MSentryUser> users = mSentryRole.getUsers(); for (MSentryUser user : users) { String userName = user.getUserName(); Set<String> rNames = userRolesMap.get(userName); if (rNames == null) { rNames = new HashSet<>(); } rNames.add(mSentryRole.getRoleName()); userRolesMap.put(userName, rNames); } } return userRolesMap; }
for (MSentryUser user : priv.getUsers()) { TSentryPrivilege tPriv = convertToTSentryPrivilege(priv); if (resultPrivilegeMap.containsKey(user.getUserName())) { resultPrivilegeMap.get(user.getUserName()).add(tPriv); } else { Set<TSentryPrivilege> tPrivSet = Sets.newTreeSet(); tPrivSet.add(tPriv); resultPrivilegeMap.put(user.getUserName(), tPrivSet);
/** * Fail test if user doesn't exist * @param userName User name to checl * @throws Exception */ private void checkUserExists(String userName) throws Exception { assertEquals(userName.toLowerCase(), sentryStore.getMSentryUserByName(userName).getUserName()); }
allUsersPrivileges.put(mSentryUser.getUserName(), tPrivileges);
pUpdate = addPrivilegeEntry (mPriv, TPrivilegePrincipalType.USER, mUser.getUserName(), pUpdate);