Class TransactionalEntityRegionAccessStrategy

  • All Implemented Interfaces:
    org.hibernate.cache.spi.access.EntityRegionAccessStrategy, org.hibernate.cache.spi.access.RegionAccessStrategy

    public class TransactionalEntityRegionAccessStrategy
    extends Object
    implements org.hibernate.cache.spi.access.EntityRegionAccessStrategy
    Author:
    Nikita Koksharov
    • Constructor Detail

      • TransactionalEntityRegionAccessStrategy

        public TransactionalEntityRegionAccessStrategy​(org.hibernate.cfg.Settings settings,
                                                       org.hibernate.cache.spi.GeneralDataRegion region)
    • Method Detail

      • get

        public Object get​(org.hibernate.engine.spi.SessionImplementor session,
                          Object key,
                          long txTimestamp)
                   throws org.hibernate.cache.CacheException
        Specified by:
        get in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • putFromLoad

        public boolean putFromLoad​(org.hibernate.engine.spi.SessionImplementor session,
                                   Object key,
                                   Object value,
                                   long txTimestamp,
                                   Object version,
                                   boolean minimalPutOverride)
                            throws org.hibernate.cache.CacheException
        Specified by:
        putFromLoad in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • lockItem

        public org.hibernate.cache.spi.access.SoftLock lockItem​(org.hibernate.engine.spi.SessionImplementor session,
                                                                Object key,
                                                                Object version)
                                                         throws org.hibernate.cache.CacheException
        Specified by:
        lockItem in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • unlockItem

        public void unlockItem​(org.hibernate.engine.spi.SessionImplementor session,
                               Object key,
                               org.hibernate.cache.spi.access.SoftLock lock)
                        throws org.hibernate.cache.CacheException
        Specified by:
        unlockItem in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • getRegion

        public org.hibernate.cache.spi.EntityRegion getRegion()
        Specified by:
        getRegion in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
      • insert

        public boolean insert​(org.hibernate.engine.spi.SessionImplementor session,
                              Object key,
                              Object value,
                              Object version)
                       throws org.hibernate.cache.CacheException
        Specified by:
        insert in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • afterInsert

        public boolean afterInsert​(org.hibernate.engine.spi.SessionImplementor session,
                                   Object key,
                                   Object value,
                                   Object version)
                            throws org.hibernate.cache.CacheException
        Specified by:
        afterInsert in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • remove

        public void remove​(org.hibernate.engine.spi.SessionImplementor session,
                           Object key)
                    throws org.hibernate.cache.CacheException
        Specified by:
        remove in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • update

        public boolean update​(org.hibernate.engine.spi.SessionImplementor session,
                              Object key,
                              Object value,
                              Object currentVersion,
                              Object previousVersion)
                       throws org.hibernate.cache.CacheException
        Specified by:
        update in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • afterUpdate

        public boolean afterUpdate​(org.hibernate.engine.spi.SessionImplementor session,
                                   Object key,
                                   Object value,
                                   Object currentVersion,
                                   Object previousVersion,
                                   org.hibernate.cache.spi.access.SoftLock lock)
                            throws org.hibernate.cache.CacheException
        Specified by:
        afterUpdate in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • generateCacheKey

        public Object generateCacheKey​(Object id,
                                       org.hibernate.persister.entity.EntityPersister persister,
                                       org.hibernate.engine.spi.SessionFactoryImplementor factory,
                                       String tenantIdentifier)
        Specified by:
        generateCacheKey in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
      • getCacheKeyId

        public Object getCacheKeyId​(Object cacheKey)
        Specified by:
        getCacheKeyId in interface org.hibernate.cache.spi.access.EntityRegionAccessStrategy
      • putFromLoad

        public boolean putFromLoad​(org.hibernate.engine.spi.SessionImplementor session,
                                   Object key,
                                   Object value,
                                   long txTimestamp,
                                   Object version)
                            throws org.hibernate.cache.CacheException
        Specified by:
        putFromLoad in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • lockRegion

        public org.hibernate.cache.spi.access.SoftLock lockRegion()
                                                           throws org.hibernate.cache.CacheException
        Specified by:
        lockRegion in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • unlockRegion

        public void unlockRegion​(org.hibernate.cache.spi.access.SoftLock lock)
                          throws org.hibernate.cache.CacheException
        Specified by:
        unlockRegion in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • removeAll

        public void removeAll()
                       throws org.hibernate.cache.CacheException
        Specified by:
        removeAll in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • evict

        public void evict​(Object key)
                   throws org.hibernate.cache.CacheException
        Specified by:
        evict in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException
      • evictAll

        public void evictAll()
                      throws org.hibernate.cache.CacheException
        Specified by:
        evictAll in interface org.hibernate.cache.spi.access.RegionAccessStrategy
        Throws:
        org.hibernate.cache.CacheException