String getQueryKey(Query query, UserStatus userStatus) { StringBuilder sb = new StringBuilder(); String SEP = ":::"; sb.append(query.getEmail()).append(SEP).append(query.getFirstName()).append(SEP).append(query.getLastName()) .append(SEP).append(query.getUserName()).append(SEP).append(query.getFromLoginDate()).append(SEP) .append(query.getToLoginDate()).append(SEP).append(userStatus.name()).append(SEP); return sb.toString(); } }
if (q.getUserName() == null && q.getEmail() != null && q.getFirstName() == null && q.getLastName() == null) { final User uniqueUser = findUserByUniqueAttribute(USER_EMAIL, q.getEmail(), userStatus); } else if (!q.getEmail().contains("*")) { return new ListAccess<User>() { public User[] load(int index, int length) throws Exception { if (q.getEmail() != null) { qb.attributeValuesFilter(UserDAOImpl.USER_EMAIL, new String[] { q.getEmail() }); if (q.getUserName() == null && q.getEmail() == null && q.getFirstName() == null && q.getLastName() == null) { list = new IDMUserListAccess(qb, 20, !countPaginatedUsers(), userStatus); } else {
/** * Query( name = "" , standardSQL = "..." oracleSQL = "..." ) */ public ListAccess<User> findUsersByQuery(Query orgQuery) throws Exception { DBObjectQuery<UserImpl> dbQuery = new DBObjectQuery<UserImpl>(UserImpl.class); if (orgQuery.getUserName() != null) { dbQuery.addLIKE("UPPER(USER_NAME)", addAsterisk(orgQuery.getUserName().toUpperCase())); } if (orgQuery.getFirstName() != null) { dbQuery.addLIKE("UPPER(FIRST_NAME)", orgQuery.getFirstName().toUpperCase()); } if (orgQuery.getLastName() != null) { dbQuery.addLIKE("UPPER(LAST_NAME)", orgQuery.getLastName().toUpperCase()); } dbQuery.addLIKE("EMAIL", orgQuery.getEmail()); dbQuery.addGT("LAST_LOGIN_TIME", orgQuery.getFromLoginDate()); dbQuery.addLT("LAST_LOGIN_TIME", orgQuery.getToLoginDate()); return new JDBCListAccess<User>(this, dbQuery.toQuery(), dbQuery.toCountQuery()); }
/** * {@inheritDoc} */ public ListAccess<User> findUsersByQuery(Query q) throws Exception { ObjectQuery oq = new ObjectQuery(UserImpl.class); if (q.getUserName() != null) { oq.addLIKE("UPPER(userName)", addAsterisk(q.getUserName().toUpperCase())); } if (q.getFirstName() != null) { oq.addLIKE("UPPER(firstName)", q.getFirstName().toUpperCase()); } if (q.getLastName() != null) { oq.addLIKE("UPPER(lastName)", q.getLastName().toUpperCase()); } oq.addLIKE("email", q.getEmail()); oq.addGT("lastLoginTime", q.getFromLoginDate()); oq.addLT("lastLoginTime", q.getToLoginDate()); return new HibernateListAccess<User>(service_, oq.getHibernateQueryWithBinding(), oq.getHibernateCountQueryWithBinding(), oq.getBindingFields()); }