Interface AuxiliaryCache<K,V>

All Superinterfaces:
ICache<K,V>, ICacheType
All Known Subinterfaces:
IRemoteCacheClient<K,V>
All Known Implementing Classes:
AbstractAuxiliaryCache, AbstractAuxiliaryCacheEventLogging, AbstractDiskCache, AbstractRemoteAuxiliaryCache, AbstractRemoteCacheNoWaitFacade, BlockDiskCache, IndexedDiskCache, JDBCDiskCache, LateralCache, LateralCacheNoWait, LateralCacheNoWaitFacade, MySQLDiskCache, RemoteCache, RemoteCacheNoWait, RemoteCacheNoWaitFacade, RemoteHttpCache

public interface AuxiliaryCache<K,V> extends ICache<K,V>
Tag interface for auxiliary caches. Currently this provides no additional methods over what is in ICache, but I anticipate that will change. For example, there will be a mechanism for determining the type (disk/lateral/remote) of the auxiliary here -- and the existing getCacheType will be removed from ICache.
  • Method Details

    • getKeySet

      Get a set of the keys for all elements in the auxiliary cache.

      Returns:
      a set of the key type TODO This should probably be done in chunks with a range passed in. This will be a problem if someone puts a 1,000,000 or so items in a region.
      Throws:
      IOException - if access to the auxiliary cache fails
    • getStatistics

      Returns:
      the historical and statistical data for a region's auxiliary cache.
    • getAuxiliaryCacheAttributes

      This returns the generic attributes for an auxiliary cache. Most implementations will cast this to a more specific type.

      Returns:
      the attributes for the auxiliary cache
    • setElementSerializer

      void setElementSerializer(IElementSerializer elementSerializer)
      Allows you to inject a custom serializer. A good example would be a compressing standard serializer.

      Parameters:
      elementSerializer -
    • setCacheEventLogger

      void setCacheEventLogger(ICacheEventLogger cacheEventLogger)
      Every Auxiliary must allow for the use of an event logger.

      Parameters:
      cacheEventLogger -