Class EHCacheRegion

  • All Implemented Interfaces:
    CacheRegion
    Direct Known Subclasses:
    CacheAccessImpl

    public class EHCacheRegion
    extends java.lang.Object
    implements CacheRegion
    Cache region implementation using EHCache.
    • Field Detail

      • manager

        protected net.sf.ehcache.CacheManager manager
      • cacheMap

        protected net.sf.ehcache.Cache cacheMap
    • Constructor Detail

      • EHCacheRegion

        public EHCacheRegion​(java.lang.String name,
                             int maxEntries)
      • EHCacheRegion

        public EHCacheRegion​(java.lang.String name,
                             int maxEntries,
                             java.lang.String evictionPolicy)
      • EHCacheRegion

        public EHCacheRegion​(java.lang.String name,
                             int maxEntries,
                             java.lang.String evictionPolicy,
                             boolean exclusiveComputation,
                             boolean statsEnabled)
      • EHCacheRegion

        public EHCacheRegion​(java.lang.String name,
                             int maxEntries,
                             java.lang.String evictionPolicy,
                             boolean exclusiveComputation,
                             boolean statsEnabled,
                             java.lang.Long ttlSeconds)
        Constructor that adds possibility to configure TTL seconds for cache elements.
        Parameters:
        ttlSeconds - time to live seconds for cache elements (see EHCache docs for information about how this affects cache operations)
    • Method Detail

      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • createCacheStatistics

        protected CacheStatistics createCacheStatistics()
      • createCacheConfiguration

        protected net.sf.ehcache.config.CacheConfiguration createCacheConfiguration()
      • init

        @PostConstruct
        public void init()
      • destroy

        @PreDestroy
        public void destroy()
        Method unregisters cache
      • createCacheEventListener

        protected net.sf.ehcache.event.CacheEventListener createCacheEventListener()
      • get

        public java.lang.Object get​(CacheKey key)
        Description copied from interface: CacheRegion
        Gets value from the cache. If value is absent returns null. Must be thread safe.
        Specified by:
        get in interface CacheRegion
      • getMaxReachedSize

        public long getMaxReachedSize()
        Description copied from interface: CacheRegion
        Returns number of elements currently in the cache
        Specified by:
        getMaxReachedSize in interface CacheRegion
      • getName

        public java.lang.String getName()
        Description copied from interface: CacheRegion
        Gets region name. Needed to resolve proper cache region.
        Specified by:
        getName in interface CacheRegion
      • getHandledTypes

        public java.lang.String[] getHandledTypes()
        Description copied from interface: CacheRegion
        Gets types which can be stored in the region. Needed to resolve proper cache region.
        Special type names are defined in RegionType.
        Specified by:
        getHandledTypes in interface CacheRegion
      • getCacheMaxEntries

        public long getCacheMaxEntries()
        Description copied from interface: CacheRegion
        Gets number of cache entries above which invalidation occurs.
        Specified by:
        getCacheMaxEntries in interface CacheRegion
      • clearCache

        public void clearCache()
        Description copied from interface: CacheRegion
        Removes all elements from cache.
        Specified by:
        clearCache in interface CacheRegion
      • invalidate

        public java.lang.Object invalidate​(CacheKey key,
                                           boolean fireEventsEvenIfNotRemoved)
        Description copied from interface: CacheRegion
        Invalidates (removes) value from cache map. Must be thread safe.
        Specified by:
        invalidate in interface CacheRegion
        Returns:
        an object invalidated from cache.
      • getAllKeys

        public java.util.Collection<CacheKey> getAllKeys()
        Description copied from interface: CacheRegion
        Returns all keys currently stored in this region.
        Specified by:
        getAllKeys in interface CacheRegion
      • remove

        public java.lang.Object remove​(CacheKey key,
                                       boolean fireEvents)
        Description copied from interface: CacheRegion
        Removes value stored on the key specified. This method does not update statistics. Returns value removed or null.
        Specified by:
        remove in interface CacheRegion
      • setHandledTypes

        public void setHandledTypes​(java.lang.String[] handledTypes)
        Parameters:
        handledTypes - the handledTypes to set