import javax.persistence.TypedQuery;
import org.wamblee.cache.Cache;
+import org.wamblee.cache.ZeroCache;
import org.wamblee.persistence.JpaMergeSupport;
import org.wamblee.security.authentication.AbstractUserSet;
import org.wamblee.security.authentication.Group;
entityManager = aEntityManager;
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#userModified(org.wamblee.usermgt.User)
- */
+ @Override
public void userModified(User aUser) {
assert aUser.getPrimaryKey() != null;
User merged = entityManager.merge(aUser);
cache.put(aUser.getName(), new User(aUser));
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#find(java.lang.String)
- */
+ @Override
public User find(String aName) {
User user = cache.get(aName);
query.setParameter(User.NAME_PARAM, aName);
try {
user = query.getSingleResult();
- user = new User(user);
setPasswordInfo(user);
cache.put(aName, user);
return user;
}
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#contains(org.wamblee.usermgt.User)
- */
+ @Override
public boolean contains(User aUser) {
return find(aUser.getName()) != null;
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#add(org.wamblee.usermgt.User)
- */
+ @Override
public boolean add(User aUser) {
assert aUser.getPrimaryKey() == null;
return true;
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#remove(org.wamblee.usermgt.User)
- */
+ @Override
public boolean remove(User aUser) {
if (!contains(aUser)) {
return false;
return true;
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#list()
- */
+ @Override
public Set<User> list() {
Set<User> users = new TreeSet<User>();
List<User> list = entityManager.createNamedQuery(User.QUERY_ALL_USERS,
return users;
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#list(org.wamblee.usermgt.Group)
- */
+ @Override
public Set<User> list(Group aGroup) {
Set<User> users = new TreeSet<User>();
TypedQuery<User> query = entityManager.createNamedQuery(
return users;
}
- /*
- * (non-Javadoc)
- *
- * @see org.wamblee.usermgt.UserSet#size()
- */
+ @Override
public int size() {
Long result = entityManager.createNamedQuery(User.QUERY_COUNT_USERS, Long.class).getSingleResult();
return result.intValue();
}
+
+ @Override
+ public void clearCache() {
+ cache.clear();
+ }
}