Interface that must be implemented by any level 2 query cache
used by OpenJPA. These methods should be threadsafe.
Most query cache implementations will probably implement
Configurable to receive a handle to the
system configuration on construction.

remove

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.

unpin

Unpin the value stored under key into the cache.
This method reverses a previous invocation of 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.

Returns:

true if key's value was
unpinned from the cache; false if the
key is not in the cache.