• CacheManager
  • Documentation
  • Api Docs
  • MichaCo.net
    Show / Hide Table of Contents

    Namespace CacheManager.Core.Internal

    Classes

    BackplaneMessage

    Implements a simple message which can be send as a string to the server.

    BaseCache<TCacheValue>

    The BaseCache class implements the overall logic of this cache library and delegates the concrete implementation of how e.g. add, get or remove should work to a derived class.

    To use this base class simply override the abstract methods for Add, Get, Put and Remove.
    All other methods defined by ICache will be delegated to those methods.

    BaseCacheHandle<TCacheValue>

    The BaseCacheHandle implements all the logic which might be common for all the cache handles. It abstracts the ICache<TCacheValue> interface and defines new properties and methods the implementer must use.

    Actually it is not advisable to not use BaseCacheHandle<TCacheValue>.

    BinaryCacheSerializer

    Basic binary serialization implementation of the ICacheSerializer. This implementation will be used in case no other serializer is configured for the cache manager and serialization is needed (only distributed caches will have to serialize the cache value). Binary serialization will not be available in some environments.

    CacheActionEventArgs

    Event arguments for cache actions.

    CacheBackplane

    In CacheManager, a cache backplane is used to keep in process and distributed caches in sync.
    If the cache manager runs inside multiple nodes or applications accessing the same distributed cache, and an in process cache is configured to be in front of the distributed cache handle. All Get calls will hit the in process cache.
    Now when an item gets removed for example by one client, all other clients still have that cache item available in the in process cache.
    This could lead to errors and unexpected behavior, therefore a cache backplane will send a message to all other cache clients to also remove that item.

    The same mechanism will apply to any Update, Put, Remove, Clear or ClearRegion call of the cache.

    CacheClearEventArgs

    Event arguments for cache clear events.

    CacheClearRegionEventArgs

    Event arguments for clear region events.

    CacheItemRemovedEventArgs

    Event arguments for cache actions.

    CacheSerializer

    Base implementation for cache serializers.

    CacheStats<TCacheValue>

    Stores statistical information for a BaseCacheHandle<TCacheValue>.

    Statistical counters are stored globally for the BaseCacheHandle<TCacheValue> and for each cache region!

    To retrieve a counter for a region only, specify the optional region attribute of GetStatistics.

    DictionaryCacheHandle<TCacheValue>

    This handle is for internal use and testing. It does not implement any expiration.

    RequiresSerializerAttribute

    Can be used to decorate cache handles which require serialization

    SerializerCacheItem<T>

    Basic abstraction for serializers to work with cache items.

    TypeCache

    Used by serializers to find value types

    UpdateItemResult

    Helper class to create correct instances.

    UpdateItemResult<TCacheValue>

    Used by cache handle implementations to let the cache manager know what happened during an update operation.

    Interfaces

    ICacheItemConverter

    Simple converter contract used by the serializer cache item. Serializers will use that to convert back to The CacheItem<T>.

    ICacheItemProperties

    Contract which exposes only the properties of the CacheItem<T> without T value.

    ICacheSerializer

    Defines the contract for serialization of the cache value and cache items. The cache item serialization should be separated in case the serialization technology does not support immutable objects; in that case CacheItem<T> might not be serializable directly and the implementation has to wrap the cache item.

    Enums

    BackplaneAction

    Defines the possible actions of the backplane message.

    CacheActionEventArgOrigin

    The origin enum indicates if the cache event was triggered locally or through the backplane.

    CacheItemChangedEventAction

    The enum defines the actual operation used to change the value in the cache.

    CacheItemRemovedReason

    A flag indicating the reason when an item got removed from the cache.

    CacheStatsCounterType

    Defines the different counter types the cache manager supports.

    UpdateItemResultState

    Represents that state of an update operation.

    © 2025 by Michael Conrad. All rights reserved. - MichaCo.net