nameFilterSearchControl = (NameFilterSearchControl)control;
}
}
}
HibernateIdentityObjectType hibernateType = getHibernateIdentityObjectType(ctx, identityType);
List<IdentityObject> results;
Session hibernateSession = getHibernateSession(ctx);
try
{
Query q = null;
if (sortSearchControl != null)
{
if (sortSearchControl.isAscending())
{
q = hibernateSession.createQuery(HibernateIdentityObject.findIdentityObjectsByTypeOrderedByNameAsc);
}
else
{
q = hibernateSession.createQuery(HibernateIdentityObject.findIdentityObjectsByTypeOrderedByNameDesc);
}
}
else
{
q = hibernateSession.createQuery(HibernateIdentityObject.findIdentityObjectsByType);
}
if (pageSearchControl != null)
{
if (pageSearchControl.getLimit() > 0)
{
q.setMaxResults(pageSearchControl.getLimit());
}
q.setFirstResult(pageSearchControl.getOffset());
}
q.setParameter("realm", getRealm(hibernateSession, ctx))
.setParameter("typeName", hibernateType.getName());
if (nameFilterSearchControl != null)
{
q.setParameter("nameFilter", nameFilterSearchControl.getFilter().replaceAll("\\*", "%"));
}