182,7 → 182,33 |
} |
} |
|
public Collection listUserLogins(CollectionInfo info, int rowsPerPage, int pageNumber, |
Integer[] sortingKeys, User user) |
throws ModelStoreException |
{ |
try { |
if(info != null) { |
info.init(((Integer)HibernateUtil.currentSession().iterate( |
"select count(*) from UserLogin where usr = ?", |
new Object[] { user }, |
new Type[] { Hibernate.entity(User.class) } |
).next()).intValue(), |
pageNumber, rowsPerPage); |
} |
|
return HibernateUtil.pageableList(rowsPerPage, pageNumber, |
"select l from UserLogin l where usr = ?" |
+ HibernateUtil.formOrderClause(sortingKeys, sortKeysLogins), |
new Object[] { user }, |
new Type[] { Hibernate.entity(User.class) } ); |
} |
catch(HibernateException ex) { |
throw new ModelStoreException(ex); |
} |
} |
|
protected static Map sortKeys = new HashMap(); |
protected static Map sortKeysLogins = new HashMap(); |
private static boolean sortKeysInitialized = false; |
|
private static void initSortKeys() |
189,6 → 215,8 |
{ |
if(!sortKeysInitialized) { |
sortKeys.put(UserManager.SORT_LOGIN, "u.login"); |
sortKeysLogins.put(UserManager.SORT_LOGINS_TIME, "l.loginTime"); |
sortKeysLogins.put(UserManager.SORT_LOGINS_TIME_REVERSE, "l.loginTime desc"); |
sortKeysInitialized = true; |
} |
} |