AbstractQueryCache (OpenJPA 0.9.7-incubating API) function windowTitle() { parent.document.title="AbstractQueryCache (OpenJPA 0.9.7-incubating API)"; } Overview  Package   Class  Use  Tree  Deprecated  Index  Help   PREV CLASS   NEXT CLASS FRAMES    NO FRAMES     All Classes'); } //-- All Classes SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD org.apache.openjpa.datacache Class AbstractQueryCache java.lang.Object org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager org.apache.openjpa.datacache.AbstractQueryCache All Implemented Interfaces: QueryCache, TypesChangedListener, Configurable, Closeable, EventManager Direct Known Subclasses: ConcurrentQueryCache public abstract class AbstractQueryCacheextends AbstractConcurrentEventManagerimplements QueryCache, Configurable Abstract QueryCache implementation that provides various statistics, logging, and timeout functionality common across cache implementations. Author: Patrick Linskey, Abe White Field Summary protected  OpenJPAConfiguration conf           The configuration set by the system. protected  Log log           The log to use.   Constructor Summary AbstractQueryCache()               Method Summary  void addTypesChangedListener(TypesChangedListener listen)           Add a new types event listener to this cache.  void afterCommit(RemoteCommitEvent event)           This method is part of the RemoteCommitListener interface.  void clear()           Remove all data from this cache. protected abstract  void clearInternal()           Clear the cache.  void close()           Free the resources used by this cache. protected  void close(boolean clear)              void endConfiguration()           Invoked upon completion of bean property configuration for this object. protected  void fireEvent(Object event, Object listener)           Implement this method to fire the given event to the given listener.  QueryResult get(QueryKey key)           Return a list of oids for the given query key. protected abstract  QueryResult getInternal(QueryKey qk)           Return the list for the given key.  void initialize(DataCacheManager manager)           Initialize any resources associated with the given DataCacheManager.  boolean isClosed()             protected abstract  Collection keySet()           Return a threadsafe view of the keys in this cache. protected  Collection newListenerCollection()           Individual query results will be registered as types changed listeners.  void onTypesChanged(TypesChangedEvent ev)           Notification that instances of persistent types have changed.  boolean pin(QueryKey key)           Pin the value stored under qk into the cache. protected abstract  boolean pinInternal(QueryKey qk)           Pin an object to the cache.  QueryResult put(QueryKey qk, QueryResult oids)           Set the list of OIDs for the given query key. protected abstract  QueryResult putInternal(QueryKey qk, QueryResult oids)           Add the given result to the cache, returning the old result under the given key.  QueryResult remove(QueryKey key)           Remove the value stored under the given query key. protected  void removeAllInternal(Collection qks)           Remove all results under the given keys from the cache. protected abstract  QueryResult removeInternal(QueryKey qk)           Remove the result under the given key from the cache.  boolean removeTypesChangedListener(TypesChangedListener listen)           Remove an types event listener from this cache.  void setConfiguration(Configuration conf)           Invoked prior to setting bean properties.  void startConfiguration()           Invoked before bean property configuration is begun on this object.  boolean unpin(QueryKey key)           Unpin the value stored under key into the cache. protected abstract  boolean unpinInternal(QueryKey qk)           Unpin an object from the cache.   Methods inherited from class org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager addListener, fireEvent, getListeners, hasListener, hasListeners, isFailFast, removeListener, setFailFast   Methods inherited from class java.lang.Object clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait   Methods inherited from interface org.apache.openjpa.datacache.QueryCache writeLock, writeUnlock   Field Detail conf protected OpenJPAConfiguration conf The configuration set by the system. log protected Log log The log to use. Constructor Detail AbstractQueryCache public AbstractQueryCache() Method Detail initialize public void initialize(DataCacheManager manager) Description copied from interface: QueryCache Initialize any resources associated with the given DataCacheManager. Specified by:initialize in interface QueryCache onTypesChanged public void onTypesChanged(TypesChangedEvent ev) Description copied from interface: TypesChangedListener Notification that instances of persistent types have changed. Specified by:onTypesChanged in interface TypesChangedListener get public QueryResult get(QueryKey key) Description copied from interface: QueryCache Return a list of oids for the given query key. This is an unmodifiable list. Specified by:get in interface QueryCache Returns:The query results matching the given key, or null if none put public QueryResult put(QueryKey qk, QueryResult oids) Description copied from interface: QueryCache Set the list of OIDs for the given query key. A reference to the given list will be stored in the query cache, so the list should not be modified after invoking this method. Specified by:put in interface QueryCache Returns:The previously cached value, or null if the key was not previously cached. See Map.put(K, V) for more information. remove public QueryResult remove(QueryKey key) Description copied from interface: QueryCache Remove the value stored under the given query key. This method is typically not invoked directly from outside the QueryCache class. Instead, the cache should be updated by implementing RemoteCommitListener, which will result in all queries that may be invalid being dropped. Specified by:remove in interface QueryCache Returns:The previously cached value, or null if the key was not previously cached. See Map.remove(java.lang.Object) for more information. pin public boolean pin(QueryKey key) Description copied from interface: QueryCache Pin the value stored under qk into the cache. This method guarantees that qk's value will not be expired if the cache exceeds its capacity. It causes this data to be ignored when determining whether or not the cache is full, effectively increasing the total amount of data stored in the cache. This method does not affect the behavior of QueryCache.remove(org.apache.openjpa.datacache.QueryKey) or TypesChangedListener.onTypesChanged(org.apache.openjpa.datacache.TypesChangedEvent). Specified by:pin in interface QueryCache Returns:true if key's value was pinned into the cache; false if the key is not in the cache. unpin public boolean unpin(QueryKey key) Description copied from interface: QueryCache Unpin the value stored under key into the cache. This method reverses a previous invocation of QueryCache.pin(org.apache.openjpa.datacache.QueryKey). This method does not remove anything from the cache; it merely makes key's value a candidate for flushing from the cache. Specified by:unpin in interface QueryCache Returns:true if key's value was unpinned from the cache; false if the key is not in the cache. clear public void clear() Description copied from interface: QueryCache Remove all data from this cache. Specified by:clear in interface QueryCache close public void close() Description copied from interface: QueryCache Free the resources used by this cache. Specified by:close in interface QueryCacheSpecified by:close in interface Closeable close protected void close(boolean clear) isClosed public boolean isClosed() addTypesChangedListener public void addTypesChangedListener(TypesChangedListener listen) Description copied from interface: QueryCache Add a new types event listener to this cache. Specified by:addTypesChangedListener in interface QueryCache removeTypesChangedListener public boolean removeTypesChangedListener(TypesChangedListener listen) Description copied from interface: QueryCache Remove an types event listener from this cache. Specified by:removeTypesChangedListener in interface QueryCache afterCommit public void afterCommit(RemoteCommitEvent event) This method is part of the RemoteCommitListener interface. If your cache subclass relies on OpenJPA for clustering support, make it implement RemoteCommitListener. This method will take care of invalidating entries from remote commits, by delegating to onTypesChanged(org.apache.openjpa.datacache.TypesChangedEvent). keySet protected abstract Collection keySet() Return a threadsafe view of the keys in this cache. This collection must be iterable without risk of concurrent modification exceptions. It does not have to implement contains() efficiently or use set semantics. getInternal protected abstract QueryResult getInternal(QueryKey qk) Return the list for the given key. putInternal protected abstract QueryResult putInternal(QueryKey qk, QueryResult oids) Add the given result to the cache, returning the old result under the given key. removeInternal protected abstract QueryResult removeInternal(QueryKey qk) Remove the result under the given key from the cache. removeAllInternal protected void removeAllInternal(Collection qks) Remove all results under the given keys from the cache. clearInternal protected abstract void clearInternal() Clear the cache. pinInternal protected abstract boolean pinInternal(QueryKey qk) Pin an object to the cache. unpinInternal protected abstract boolean unpinInternal(QueryKey qk) Unpin an object from the cache. setConfiguration public void setConfiguration(Configuration conf) Description copied from interface: Configurable Invoked prior to setting bean properties. Specified by:setConfiguration in interface Configurable startConfiguration public void startConfiguration() Description copied from interface: Configurable Invoked before bean property configuration is begun on this object. Specified by:startConfiguration in interface Configurable endConfiguration public void endConfiguration() Description copied from interface: Configurable Invoked upon completion of bean property configuration for this object. Specified by:endConfiguration in interface Configurable fireEvent protected void fireEvent(Object event, Object listener) Description copied from class: AbstractConcurrentEventManager Implement this method to fire the given event to the given listener. Specified by:fireEvent in class AbstractConcurrentEventManager newListenerCollection protected Collection newListenerCollection() Individual query results will be registered as types changed listeners. We want such query results to be gc'd once the only reference is held by the list of expiration listeners. Overrides:newListenerCollection in class AbstractConcurrentEventManager Overview  Package   Class  Use  Tree  Deprecated  Index  Help   PREV CLASS   NEXT CLASS FRAMES    NO FRAMES     All Classes'); } //-- All Classes SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD Copyright © 2006-2007 Apache Software Foundation. All Rights Reserved.