站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > JBoss 4.0.1 sp1 common API Documentation 英文版文档

CachePolicy (JBoss/Common API) - JBoss 4.0.1 sp1 common API Documentation 英文版文档


org.jboss.util
Interface CachePolicy

All Known Implementing Classes:
LRUCachePolicy, SynchronizedCachePolicy, TimedCachePolicy

public interface CachePolicy

Interface that specifies a policy for caches.

Implementation classes can implement a LRU policy, a random one, a MRU one, or any other suitable policy.

Version:
$Revision: 1.1 $
Author:
Simone Bordet

Method Summary
 void create()
          create the service, do expensive operations etc
 void destroy()
          destroy the service, tear down
 void flush()
          Flushes the cached objects from the cache.
 Object get(Object key)
          Returns the object paired with the specified key if it's present in the cache, otherwise must return null.
 void insert(Object key, Object object)
          Inserts the specified object into the cache following the implemented policy.
 Object peek(Object key)
          Returns the object paired with the specified key if it's present in the cache, otherwise must return null.
 void remove(Object key)
          Remove the cached object paired with the specified key.
 int size()
          Get the size of the cache.
 void start()
          start the service, create is already called
 void stop()
          stop the service
 

Method Detail

get

public Object get(Object key)
Returns the object paired with the specified key if it's present in the cache, otherwise must return null.
Implementations of this method must have complexity of order O(1). Differently from peek(java.lang.Object) this method not only return whether the object is present in the cache or not, but also applies the implemented policy that will "refresh" the cached object in the cache, because this cached object was really requested.

Parameters:
key - the key paired with the object
See Also:
peek(java.lang.Object)

peek

public Object peek(Object key)
Returns the object paired with the specified key if it's present in the cache, otherwise must return null.
Implementations of this method must have complexity of order O(1). This method should not apply the implemented caching policy to the object paired with the given key, so that a client can query if an object is cached without "refresh" its cache status. Real requests for the object must be done using get(java.lang.Object).

Parameters:
key - the key paired with the object
See Also:
get(java.lang.Object)

insert

public void insert(Object key,
                   Object object)
Inserts the specified object into the cache following the implemented policy.
Implementations of this method must have complexity of order O(1).

Parameters:
key - the key paired with the object
object - the object to cache
See Also:
remove(java.lang.Object)

remove

public void remove(Object key)
Remove the cached object paired with the specified key.
Implementations of this method must have complexity of order O(1).

Parameters:
key - the key paired with the object
See Also:
insert(java.lang.Object, java.lang.Object)

flush

public void flush()
Flushes the cached objects from the cache.


size

public int size()
Get the size of the cache.


create

public void create()
            throws Exception
create the service, do expensive operations etc

Throws:
Exception

start

public void start()
           throws Exception
start the service, create is already called

Throws:
Exception

stop

public void stop()
stop the service


destroy

public void destroy()
destroy the service, tear down



Copyright © 2002 JBoss Group, LLC. All Rights Reserved.