org.apache.jcs.auxiliary.remote
Class RemoteCache<K extends Serializable,V extends Serializable>

java.lang.Object
  extended by org.apache.jcs.auxiliary.AbstractAuxiliaryCache<K,V>
      extended by org.apache.jcs.auxiliary.AbstractAuxiliaryCacheEventLogging<K,V>
          extended by org.apache.jcs.auxiliary.remote.AbstractRemoteAuxiliaryCache<K,V>
              extended by org.apache.jcs.auxiliary.remote.RemoteCache<K,V>
All Implemented Interfaces:
AuxiliaryCache<K,V>, IRemoteCacheClient<K,V>, ICache<K,V>, ICacheType

public class RemoteCache<K extends Serializable,V extends Serializable>
extends AbstractRemoteAuxiliaryCache<K,V>

Client proxy for an RMI remote cache.

This handles gets, updates, and removes. It also initiates failover recovery when an error is encountered.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.apache.jcs.engine.behavior.ICacheType
ICacheType.CacheType
 
Field Summary
 
Fields inherited from class org.apache.jcs.auxiliary.remote.AbstractRemoteAuxiliaryCache
cacheName
 
Fields inherited from class org.apache.jcs.auxiliary.AbstractAuxiliaryCache
cacheEventLogger, elementSerializer, keyMatcher
 
Constructor Summary
RemoteCache(IRemoteCacheAttributes cattr, ICacheServiceNonLocal<K,V> remote, IRemoteCacheListener<K,V> listener)
          Constructor for the RemoteCache object.
 
Method Summary
 String getEventLoggingExtraInfo()
          Gets the extra info for the event log.
protected  String getIPAddressForService()
          IP address for the service, if one is stored.
 IStats getStatistics()
           
protected  void handleException(Exception ex, String msg, String eventName)
          Handles exception by disabling the remote cache service before re-throwing the exception in the form of an IOException.
 String toString()
          Debugging info.
 
Methods inherited from class org.apache.jcs.auxiliary.remote.AbstractRemoteAuxiliaryCache
fixCache, getAuxiliaryCacheAttributes, getCacheName, getCacheType, getGroupKeys, getGroupNames, getListener, getListenerId, getRemoteCacheAttributes, getRemoteCacheListener, getRemoteCacheService, getSize, getStats, getStatus, getUsingPool, processDispose, processGet, processGetMatching, processGetMultiple, processRemove, processRemoveAll, processUpdate, setListenerId, setRemoteCacheAttributes, setRemoteCacheListener, setRemoteCacheService
 
Methods inherited from class org.apache.jcs.auxiliary.AbstractAuxiliaryCacheEventLogging
dispose, disposeWithEventLogging, get, getMatching, getMatchingWithEventLogging, getMultiple, getMultipleWithEventLogging, getWithEventLogging, remove, removeAll, removeAllWithEventLogging, removeWithEventLogging, update, updateWithEventLogging
 
Methods inherited from class org.apache.jcs.auxiliary.AbstractAuxiliaryCache
createICacheEvent, createICacheEvent, getCacheEventLogger, getElementSerializer, getKeyMatcher, logApplicationEvent, logError, logICacheEvent, setCacheEventLogger, setElementSerializer, setKeyMatcher
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.jcs.auxiliary.AuxiliaryCache
setCacheEventLogger, setElementSerializer
 
Methods inherited from interface org.apache.jcs.engine.behavior.ICache
dispose, get, getMatching, getMultiple, remove, removeAll, setKeyMatcher, update
 

Constructor Detail

RemoteCache

public RemoteCache(IRemoteCacheAttributes cattr,
                   ICacheServiceNonLocal<K,V> remote,
                   IRemoteCacheListener<K,V> listener)
Constructor for the RemoteCache object. This object communicates with a remote cache server. One of these exists for each region. This also holds a reference to a listener. The same listener is used for all regions for one remote server. Holding a reference to the listener allows this object to know the listener id assigned by the remote cache.

Parameters:
cattr -
remote -
listener -
Method Detail

getStatistics

public IStats getStatistics()
Specified by:
getStatistics in interface AuxiliaryCache<K extends Serializable,V extends Serializable>
Overrides:
getStatistics in class AbstractRemoteAuxiliaryCache<K extends Serializable,V extends Serializable>
Returns:
IStats object

handleException

protected void handleException(Exception ex,
                               String msg,
                               String eventName)
                        throws IOException
Handles exception by disabling the remote cache service before re-throwing the exception in the form of an IOException.

Specified by:
handleException in class AbstractRemoteAuxiliaryCache<K extends Serializable,V extends Serializable>
Parameters:
ex -
msg -
eventName -
Throws:
IOException

toString

public String toString()
Debugging info.

Overrides:
toString in class Object
Returns:
basic info about the RemoteCache

getEventLoggingExtraInfo

public String getEventLoggingExtraInfo()
Gets the extra info for the event log.

Specified by:
getEventLoggingExtraInfo in class AbstractAuxiliaryCache<K extends Serializable,V extends Serializable>
Returns:
disk location

getIPAddressForService

protected String getIPAddressForService()
IP address for the service, if one is stored.

Protected for testing.

Returns:
String


Copyright © 2002-2013 The Apache Software Foundation. All Rights Reserved.