wt.team
Class TeamCache
java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteServer
wt.util.RMIServer
wt.cache.CacheManager
wt.team.TeamCache
- All Implemented Interfaces:
- CacheServer, Remote, Serializable, Unreferenced
- public class TeamCache
- extends CacheManager
This class implements a Team cache service. It follows the 2-level cache paradigm.
Creation and updates to Teams must be communicated to the cache by the
Services manager.
- See Also:
- Serialized Form
Constructor Summary |
TeamCache()
Do not directly invoke this constructor! Use getTeamCache instead. |
Method Summary |
protected void |
clear()
|
int |
getDefaultSize()
Get desired size of this cache. |
Enumeration |
getEntries()
Return a sorted enumeration of all TeamReferences |
static TeamCache |
getTeamCache()
Contruct a new Team cache. |
protected void |
populateCache()
|
void |
Print()
|
void |
putEntry(Object key,
Object value)
Overrides CacheManager.putEntry to do nothing so that no entries are
added to the wt.util.Cache object contained in CacheManager. |
protected void |
removeEntry(Object target)
Simply clear local cache when signalled. |
void |
reset()
Method called when connection to master cache is broken and recovered
indicating that a notification from another team cache might have been missed. |
Methods inherited from class wt.cache.CacheManager |
checkAccess, get, getDefaultName, getEntry, isCacheHost, overflow, ping, put, putEntry, reference, registerSlave, remove, remove, removeEntry, unreferenced, update, updateEntry, updateEntry |
Methods inherited from class wt.util.RMIServer |
clone, exportObject, exportObject, exportObject, getClientSocketFactory, getPort, getServerSocketFactory, getStub, isHostInList, isLocalHost, setPort, writeReplace |
versionID
private static final String versionID
- See Also:
- Constant Field Values
lock
private static Object lock
rNames
private static Vector rNames
teamCache
private static TeamCache teamCache
VERBOSE
private static final boolean VERBOSE
CACHESIZE
private static int CACHESIZE
TeamCache
public TeamCache()
throws RemoteException
- Do not directly invoke this constructor! Use getTeamCache instead.
The constructor is public so that the ServerManager can create an instance of this
class for use as the master cache.
However, since the master cache is only being used to signal slave caches, we don't
want to construct any of the internal cache objects.
getTeamCache
public static TeamCache getTeamCache()
- Contruct a new Team cache.
removeEntry
protected void removeEntry(Object target)
- Simply clear local cache when signalled. Will be repopulated on subsequent requests
- Overrides:
removeEntry
in class CacheManager
- Parameters:
target
- the key object (null = clear entire cache)
getEntries
public Enumeration getEntries()
throws WTException
- Return a sorted enumeration of all TeamReferences
- Throws:
WTException
putEntry
public void putEntry(Object key,
Object value)
- Overrides CacheManager.putEntry to do nothing so that no entries are
added to the wt.util.Cache object contained in CacheManager.
- Overrides:
putEntry
in class CacheManager
- Parameters:
key
- the key objectvalue
- the value object
getDefaultSize
public int getDefaultSize()
- Description copied from class:
CacheManager
- Get desired size of this cache.
This method attemps to find a size property called
wt.cache.size.CacheName
where cacheName
is the name of this cache. Subclasses can override this
method to control cache size in some other way. If no property is found, the default
size is 100.
Supported API: true
- Overrides:
getDefaultSize
in class CacheManager
populateCache
protected void populateCache()
throws WTException
- Throws:
WTException
clear
protected void clear()
reset
public void reset()
- Method called when connection to master cache is broken and recovered
indicating that a notification from another team cache might have been missed.
The current cache is cleared and reinitialized later.
- Overrides:
reset
in class CacheManager
Print
public void Print()