Search in sources :

Example 1 with Filter

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;
}
Also used : Filter(org.hibernate.Filter) HashSet(java.util.HashSet)

Example 2 with Filter

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();
}
Also used : Transaction(org.hibernate.Transaction) Query(org.hibernate.Query) Filter(org.hibernate.Filter) List(java.util.List) Session(org.hibernate.Session) Test(org.junit.Test)

Example 3 with Filter

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;
}
Also used : Filter(org.hibernate.Filter) Session(org.hibernate.Session)

Aggregations

Filter (org.hibernate.Filter)3 Session (org.hibernate.Session)2 HashSet (java.util.HashSet)1 List (java.util.List)1 Query (org.hibernate.Query)1 Transaction (org.hibernate.Transaction)1 Test (org.junit.Test)1