@SuppressWarnings("unchecked")
public List<JetspeedPrincipal> getPrincipalsByAttribute(String attributeName, String attributeValue, JetspeedPrincipalType type, Long securityDomain)
{
Criteria criteria = new Criteria();
criteria.addEqualTo("attributes.name", attributeName);
criteria.addEqualTo("attributes.value", attributeValue);
criteria.addEqualTo("type", type.getName());
criteria.addEqualTo("domainId", securityDomain);
Query query = QueryFactory.newQuery(PersistentJetspeedPrincipal.class,criteria);
return (List<JetspeedPrincipal>) getPersistenceBrokerTemplate().execute(new ManagedListByQueryCallback(query));