Represents a cache scavenger that runs on a background thread.
The real worker of the block. The Cache class is the traffic cop that prevents resource contention among the different threads in the system. It also will act as the remoting gateway when that feature is added to the cache.
Cache scavenging policy based on capacity.
Static factory class used to get instances of a specified CacheManager
This class contains all data important to define an item stored in the cache. It holds both the key and value specified by the user, as well as housekeeping information used internally by this block. It is public, rather than internal, to allow block extenders access to it inside their own implementations of IBackingStore.
This class represents the interface to caching as shown to the user. All caching operations are performed through this class.
Factory for CacheManagers. This class is responsible for creating all the internal classes needed to implement a CacheManager.
Represents an expiration poll timer.
Represents a task to perform expiration on cached items.
Sorts the cache items in data for scavenging
Purpose of this class is to encapsulate the behavior of how ICacheItemRefreshActions are invoked in the background.
Represents the task to start scavenging items in a CacheManager.
Utility class for serializing and deserializing objects to and from byte streams
This interface defines the contract that must be implemented by all backing stores. Implementors of this method are responsible for interacting with their underlying persistence mechanisms to store and retrieve CacheItems. All methods below must guarantee Weak Exception Safety. This means that operations must complete entirely, or they must completely clean up from the failure and leave the cache in a consistent state. The mandatory cleanup process will remove all traces of the item that caused the failure, causing that item to be expunged from the cache entirely.
Allows end users to implement their own cache item expiration schema.
This interface defines the contract that must be implemented to create an object that can be used to refresh an expired item from the cache. The implementing class must be serializable. Care must be taken when implementing this interface not to create an object that maintains too much state about its environment, as all portions of its environment will be serialized as well, creating possibly a huge object graph.
This interface defines the contract that must be implemented by all cache managers.
Represents cache operations.
Represents a cache scavenger.
Specifies the item priority levels.
The reason that the cache item was removed.