Example usage for org.hibernate.persister.entity EntityPersister getRootEntityName

List of usage examples for org.hibernate.persister.entity EntityPersister getRootEntityName

Introduction

In this page you can find the example usage for org.hibernate.persister.entity EntityPersister getRootEntityName.

Prototype

String getRootEntityName();

Source Link

Document

Returns an object that identifies the space in which identifiers of this entity hierarchy are unique.

Usage

From source file:com.hazelcast.hibernate.region.HazelcastCacheKeysFactory.java

License:Open Source License

@Override
public Object createEntityKey(Object id, EntityPersister persister, SessionFactoryImplementor factory,
        String tenantIdentifier) {
    return new CacheKeyImpl(id, persister.getIdentifierType(), persister.getRootEntityName(), tenantIdentifier,
            factory);// ww  w.  j  ava 2s. c om
}

From source file:com.hazelcast.hibernate.region.HazelcastCacheKeysFactory.java

License:Open Source License

@Override
public Object createNaturalIdKey(Object[] naturalIdValues, EntityPersister persister,
        SharedSessionContractImplementor session) {
    return new NaturalIdCacheKey(naturalIdValues, persister.getPropertyTypes(),
            persister.getNaturalIdentifierProperties(), persister.getRootEntityName(),
            (SessionImplementor) session);
}

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;
    }// ww  w  .  j  av a 2s.  c o  m
    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;
            }/*from   ww  w  . j  a va  2s  .  c om*/
            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:org.apache.ignite.cache.hibernate.HibernateKeyWrapper.java

License:Apache License

/**
 * @param id ID./*from ww  w.  ja  v a 2 s.  c om*/
 * @param persister Persister.
 * @param tenantIdentifier Tenant ID.
 * @return Cache key.
 * @see DefaultCacheKeysFactory#staticCreateEntityKey(Object, EntityPersister, SessionFactoryImplementor, String)
 */
public static Object staticCreateEntityKey(Object id, EntityPersister persister, String tenantIdentifier) {
    return new HibernateKeyWrapper(id, persister.getRootEntityName(), tenantIdentifier);
}