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

    Namespace CacheManager.Core

    Classes

    BaseCacheManager<TCacheValue>

    The BaseCacheManager<TCacheValue> implements ICacheManager<TCacheValue> and is the main class of this library. The cache manager delegates all cache operations to the list of BaseCacheHandle<TCacheValue>'s which have been added. It will keep them in sync according to rules and depending on the configuration.

    BondConfigurationBuilderExtensions

    Extensions for the configuration builder for the

    Microsoft.Bond
    based ICacheSerializer.

    CacheFactory

    Helper class to instantiate new ICacheManager<TCacheValue> instances from configuration.

    CacheHandleConfiguration

    Defines all settings the cache handle should respect.

    CacheItem<T>

    The item which will be stored in the cache holding the cache value and additional information needed by the cache handles and manager.

    CacheManagerConfiguration

    The basic cache manager configuration class.

    ConfigurationBuilder

    Helper class to load cache manager configurations from file or to build new configurations in a fluent way.

    This only loads configurations. To build a cache manager instance, use CacheFactory and pass in the configuration. Or use the Build methods of CacheFactory!

    ConfigurationBuilderCacheHandlePart

    Used to build a CacheHandleConfiguration.

    ConfigurationBuilderCachePart

    Used to build a CacheManagerConfiguration.

    CouchbaseConfigurationBuilderExtensions

    Extensions for the configuration builder specific to the Couchbase cache handle.

    JsonConfigurationBuilderExtensions

    Extensions for the configuration builder for the Newtonsoft.Json based ICacheSerializer.

    MemcachedConfigurationBuilderExtensions

    Extensions for the configuration builder specific to the Memcached cache handle.

    MicrosoftLoggingBuilderExtensions

    Extensions for the configuration builder for logging.

    MicrosoftMemoryCachingBuilderExtensions

    Extensions for the configuration builder specific to based caching.

    ProtoBufConfigurationBuilderExtensions

    Configuration builder extensions for the ProtoBuf based ICacheSerializer.

    RedisConfigurationBuilderExtensions

    Extensions for the configuration builder specific to the redis cache handle.

    RuntimeCachingBuilderExtensions

    Extensions for the configuration builder specific to System.Runtime.Caching cache handle.

    WebConfigurationBuilderExtensions

    Extensions for the configuration builder specific to System.Runtime.Caching cache handle.

    Interfaces

    ICache<TCacheValue>

    This interface is the base contract for the main stack of this library.

    The ICacheHandle and ICacheManager interfaces are derived from ICache, meaning the method call signature throughout the stack is very similar.

    We want the flexibility of having a simple get/put/delete cache up to multiple caches layered on top of each other, still using the same simple and easy to understand interface.

    The TCacheValue can, but most not be used in the sense of strongly typing. This means, you can define and configure a cache for certain object types within your domain. But you can also use object and store anything you want within the cache. All underlying cache technologies usually do not care about types of the cache items.

    ICacheManager<TCacheValue>

    This interface extends the ICache interface by some cache manager specific methods and events.

    ICacheManagerConfiguration

    The writable configuration contract used primarrily internal only

    IReadOnlyCacheManagerConfiguration

    The readonly configuration contract for cache managers.

    Enums

    CacheUpdateMode

    Defines the possible update modes of the cache manager.

    Update mode works on Get operations. If the cache manager finds the cache item in one of the cache handles, and other cache handles do not have that item, it might add the item to the other cache handles depending on the mode.

    ExpirationMode

    Defines the supported expiration modes for cache items.

    Value None will indicate that no expiration should be set.

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