use of org.hibernate.Filter in project hibernate-orm by hibernate.
the class FilterKey method createFilterKeys.
/**
* Constructs a number of FilterKey instances, given the currently enabled filters
*
* @param enabledFilters The currently enabled filters
*
* @return The filter keys, one per enabled filter
*/
public static Set<FilterKey> createFilterKeys(Map<String, Filter> enabledFilters) {
if (enabledFilters.size() == 0) {
return null;
}
final Set<FilterKey> result = new HashSet<FilterKey>();
for (Filter filter : enabledFilters.values()) {
final FilterKey key = new FilterKey(filter.getName(), ((FilterImpl) filter).getParameters(), filter.getFilterDefinition().getParameterTypes());
result.add(key);
}
return result;
}
use of org.hibernate.Filter in project hibernate-orm by hibernate.
the class DefaultNamingCollectionElementTest method testFetchEagerAndFilter.
@Test
public void testFetchEagerAndFilter() throws Exception {
Session s = openSession();
Transaction tx = s.beginTransaction();
TestCourse test = new TestCourse();
LocalizedString title = new LocalizedString("title in english");
title.getVariations().put(Locale.FRENCH.getLanguage(), "title en francais");
test.setTitle(title);
s.save(test);
s.flush();
s.clear();
Filter filter = s.enableFilter("selectedLocale");
filter.setParameter("param", "fr");
Query q = s.createQuery("from TestCourse t");
List l = q.list();
assertEquals(1, l.size());
TestCourse t = (TestCourse) s.get(TestCourse.class, test.getTestCourseId());
assertEquals(1, t.getTitle().getVariations().size());
tx.rollback();
s.close();
}
use of org.hibernate.Filter in project spring-framework by spring-projects.
the class HibernateTemplate method enableFilter.
@Override
public Filter enableFilter(String filterName) throws IllegalStateException {
Session session = getSessionFactory().getCurrentSession();
Filter filter = session.getEnabledFilter(filterName);
if (filter == null) {
filter = session.enableFilter(filterName);
}
return filter;
}