List of usage examples for org.hibernate.persister.entity EntityPersister hasCache
@Deprecated
boolean hasCache();
From source file:com.fiveamsolutions.nci.commons.test.AbstractHibernateTestCase.java
License:Open Source License
/** * In JUnit3x you would normally override the setUp() and add your own functionality locally however, in JUnit4 to * override simply define your method and give it the <code>@Before annotation</code>. Doing so will cause that * method to be invoked after the parent class's setUp(). *//*from w ww. j a v a2 s .c om*/ @SuppressWarnings("unchecked") @Before public final void setUp() { Transaction tx = HibernateUtil.getHibernateHelper().beginTransaction(); SchemaExport se = new SchemaExport(HibernateUtil.getHibernateHelper().getConfiguration()); se.drop(false, true); se.create(false, true); tx.commit(); // clean up the hibernate second level cache between runs SessionFactory sf = getCurrentSession().getSessionFactory(); Map<?, EntityPersister> classMetadata = sf.getAllClassMetadata(); for (EntityPersister ep : classMetadata.values()) { if (ep.hasCache()) { sf.evictEntity(ep.getCacheAccessStrategy().getRegion().getName()); } } Map<?, AbstractCollectionPersister> collMetadata = sf.getAllCollectionMetadata(); for (AbstractCollectionPersister acp : collMetadata.values()) { if (acp.hasCache()) { sf.evictCollection(acp.getCacheAccessStrategy().getRegion().getName()); } } transaction = HibernateUtil.getHibernateHelper().beginTransaction(); }
From source file:com.webbfontaine.valuewebb.action.rimm.CacheCleaner.java
License:Open Source License
public Object clean() { if (StringUtils.trimToNull(entityClass) != null) { EntityManager entityManager = Utils.getEntityManager(); SessionFactory sf = ((Session) entityManager.getDelegate()).getSessionFactory(); EntityPersister classMetadata = (EntityPersister) sf.getClassMetadata(entityClass); if (classMetadata != null && classMetadata.hasCache()) { LOGGER.info("Evicting cache for {0}", entityClass); sf.evictEntity(entityClass); sf.evictQueries();//from w w w . ja v a2 s . c om InfoHandling.getInstance().setInfoList("Cache evicted"); } else { ErrorHandling.addFacesMessageError(null, "Entity is not cached"); } } return ""; }
From source file:fr.keyconsulting.oliphant.NotifyListener.java
License:Open Source License
public boolean isKnownToBeStaleInL2(Object object, EventSource session) { final EntityPersister persister = sessionFactory.getEntityPersister(session.getEntityName(object)); String uid = getUid(object, session); if (!versions.containsKey(uid)) { return false; }// w ww .jav a 2s.c om if (persister.isVersioned()) { if (persister.hasCache() && session.getCacheMode().isGetEnabled()) { final EntityRegionAccessStrategy cacheAccessStrategy = persister.getCacheAccessStrategy(); if (cacheAccessStrategy == null) { return false; } final CacheKey ck = new CacheKey(session.getIdentifier(object), persister.getIdentifierType(), persister.getRootEntityName(), session.getEntityMode(), session.getFactory()); CacheEntry cachedObject = (CacheEntry) cacheAccessStrategy.get(ck, Long.MAX_VALUE); if (cachedObject == null) { return false; } if (Base64.encodeBytes(cachedObject.getDisassembledState()[persister.getVersionProperty()] .toString().getBytes()) != versions.get(uid)) { return true; } } } return false; }
From source file:fr.keyconsulting.oliphant.NotifyListener.java
License:Open Source License
public void evictFromL2(Object object, EventSource session) { final EntityPersister persister = sessionFactory.getEntityPersister(session.getEntityName(object)); if (persister.isVersioned()) { if (persister.hasCache() && session.getCacheMode().isGetEnabled()) { final EntityRegionAccessStrategy cacheAccessStrategy = persister.getCacheAccessStrategy(); if (cacheAccessStrategy == null) { return; }/*w w w . j ava2 s. com*/ final CacheKey ck = new CacheKey(session.getIdentifier(object), persister.getIdentifierType(), persister.getRootEntityName(), session.getEntityMode(), session.getFactory()); cacheAccessStrategy.evict(ck); Serializable identifier = session.getIdentifier(object); LOG.debug("* Object " + identifier + " evicted from L2"); } } }
From source file:gov.nih.nci.firebird.test.AbstractHibernateTestCase.java
License:Open Source License
/** * Method that runs before the test to clean up the db and start the transaction. *//*www.ja v a 2 s .c om*/ @SuppressWarnings("unchecked") @Before public void setUp() throws Exception { // clean up the hibernate second level cache between runs SessionFactory sf = getCurrentSession().getSessionFactory(); Map<String, EntityPersister> classMetadata = sf.getAllClassMetadata(); for (EntityPersister ep : classMetadata.values()) { if (ep.hasCache()) { sf.evictEntity(ep.getCacheAccessStrategy().getRegion().getName()); } } Map<?, AbstractCollectionPersister> collMetadata = sf.getAllCollectionMetadata(); for (AbstractCollectionPersister acp : collMetadata.values()) { if (acp.hasCache()) { sf.evictCollection(acp.getCacheAccessStrategy().getRegion().getName()); } } transaction = helper.beginTransaction(); }