boolean fetchEffectiveGroupsSpecified(UserDataParts[] fetchParameters) { if (fetchParameters!=null && fetchParameters.length>0) { for (UserDataParts currentPart : fetchParameters) { if (UserDataParts.EFFECTIVE_GROUPS.equals(currentPart)) { return true; } } } return false; }
public String getId(){ return userData.getId(); }
public User getUser(){ return userData.getUser(); }
/** * Secures {@link User} object. * @param source * @return {@link User} object */ protected User prepareMinimalUser(User source) { if (source==null) { return null; } // creating new object to make sure only specified data will be sent to unauthorized client User result = new User(); result.setId(source.getId()); result.setDomain(source.getDomain()); result.setIdentifiers(source.getIdentifiers()); result.setAttributes(prepareMinimalAttributes(source.getAttributes())); return result; }
private Map<String, String> getAllAttr(){ Map<String, String> attrs = userData.getUser().getAttributes(); if(attrs == null) attrs = Collections.emptyMap(); return attrs; }
/** * Secures {@link UserData} object. * @param source * @return secured {@link UserData} object */ protected UserData prepareMinimalUserData(UserData source) { if (source==null) { return null; } // creating new object to make sure only specified data will be sent to unauthorized client UserData result = new UserData(); result.setId(source.getId()); result.setUser(prepareMinimalUser(source.getUser())); return result; }
public void addAllAttr(Map<String, String> attr){ Map<String, String> oldAttr = userData.getUser().getAttributes(); if(oldAttr==null) oldAttr = Collections.emptyMap(); Map<String, String> newAttr = Maps.newHashMap(); newAttr.putAll(oldAttr); newAttr.putAll(attr); userData.getUser().setAttributes(newAttr); }
/** * Builds user login. * @param userData * @return user login */ public static String buildUserLogin(UserData userData) { // in some scenarios there are no additional ids, main id only which is user's login return (userData.getUser().getIdentifiers()!=null && !userData.getUser().getIdentifiers().isEmpty())? userData.getUser().getIdentifiers().iterator().next(): userData.getUser().getId(); }
/** * Transform user to hibernate user. * * @param user the user * @return the hibernate user */ public static HibernateUser transformUserToHibernateUser(User user) { if (user == null) { return null; } HibernateUser hibernateUser = new HibernateUser(); hibernateUser.setId(user.getId()); hibernateUser.setDomain(user.getDomain()); hibernateUser.fillUserRelatedFields(user); return hibernateUser; }
/** * Converts group DTO to userDb model. * @param source * @return {@link Group} */ protected static Group convertGroup(GroupDTO source) { Group result = new Group(); if (source.getName()!=null && source.getName().trim().length()>0) { String domain = (source.getDomain()!=null && source.getDomain().trim().length()>0)? source.getDomain():null; result.setGroupName(new GroupName(domain, source.getName())); } if (source.getRolesCSV()!=null && source.getRolesCSV().trim().length()>0) { result.setRoles(convertCSVToSet(source.getRolesCSV())); } return result; }
@Override public String addGroup(Group group) throws GroupExistsException, DomainNotSupportedException { if (group.getGroupName().getDomain() == null) { group.getGroupName().setDomain(UserCatalogConstants.DEFAULT_DOMAIN_NAME); } else { checkIfDomainSupported(group.getGroupName().getDomain()); } return groupDao.save(UserCatalogModelHibernateModelTransformer.transformGroupToHibernateGroup(group)); }
/** * Transform group to hibernate group. * * @param group the group * @return the hibernate group */ public static HibernateGroup transformGroupToHibernateGroup(Group group) { if (group == null) { return null; } HibernateGroup hibernateGroup = new HibernateGroup(); hibernateGroup.setId(group.getId()); hibernateGroup.setDomain(group.getGroupName().getDomain()); hibernateGroup.fillGroupRelatedFields(group); return hibernateGroup; }
public Credential getOneCredential(){ return userData.getCredentials().get(0); }
/** * Transform hibernate group to group name. * * @param hibernateGroup the hibernate group * @return the group name */ public static GroupName transformHibernateGroupToGroupName(HibernateGroup hibernateGroup) { if (hibernateGroup == null) { return null; } return new GroupName(hibernateGroup.getDomain(), hibernateGroup.getName()); }
/** * Builds user name. * @param userData * @return user name */ public static String buildUserName(UserData userData) { if (userData.getUser().getAttributes().containsKey(UserAttributes.ATTRIBUTE_NAME)) { return userData.getUser().getAttributes().get(UserAttributes.ATTRIBUTE_NAME); } else if (userData.getUser().getAttributes().containsKey(UserAttributes.ATTRIBUTE_FIRST_NAME)) { String userName = userData.getUser().getAttributes().get(UserAttributes.ATTRIBUTE_FIRST_NAME); if (userData.getUser().getAttributes().containsKey(UserAttributes.ATTRIBUTE_LAST_NAME)) { userName += ' '; userName += userData.getUser().getAttributes().get(UserAttributes.ATTRIBUTE_LAST_NAME); } return userName; } else { // fallback: user name will be based on login return buildUserLogin(userData); } } }
/** * Effective user data sorting according to the identifiers order. * Assuming candidates and ids size must is the same. * @param candidates * @param ids * @return sorted {@link UserData} objects */ List<UserData> sort(List<UserData> candidates, List<String> ids) { UserData[] result = new UserData[candidates.size()]; for (UserData current : candidates) { result[ids.indexOf(current.getUser().getId())] = current; } return Arrays.asList(result); }
void sendMail(List<String> data, String userLogin) { UserData userData = userCatalog.loadUser(userLogin, domain, UserDataParts.SAFE_SENSITIVE_DATA); Map<String, Object> mailModel = new HashMap<String, Object>(); mailModel.put("data", data); templatedMailSender.sendMail(userData.getUser().getAttributes() .get(UserAttributes.ATTRIBUTE_EMAIL), senderServiceSubject, senderServiceTemplate, senderServiceTemplateHtml, mailModel); }
private DefaultUser loadUserData(String identifier){ UserData changedUserData = userCatalog.loadUser(identifier, domain, UserDataParts.SAFE_SENSITIVE_DATA); return new DefaultUser( DefaultUserHelper.buildUserLogin(changedUserData), "", DefaultUserHelper.buildUserName(changedUserData), changedUserData.getUser().getAttributes().get(UserAttributes.ATTRIBUTE_EMAIL), changedUserData.getUser().getAttributes()); }