Class MemoryCache<TInput, TCache>

Inheritance
MemoryCache<TInput, TCache>
Implements
ICacheManager<TInput, TCache>
Namespace: ETLBox.DataFlow
Assembly: ETLBox.dll
Syntax
    public sealed class MemoryCache<TInput, TCache> : ICacheManager<TInput, TCache>, ILimitedCache where TCache : class
Type Parameters
NameDescription
TInput
TCache

Constructors

MemoryCache()

Declaration
    public MemoryCache()

Fields

DEFAULT_MAX_CACHE_SIZE

Declaration
    public const int DEFAULT_MAX_CACHE_SIZE = 10000
Field Value
TypeDescription
int

Properties

CopyIntoCacheFunc

Declaration
    public Func<TInput, TCache> CopyIntoCacheFunc { get; set; }
Property Value
TypeDescription
Func<TInput, TCache>

Dict

Declaration
    public IDictionary<object, TCache> Dict { get; }
Property Value
TypeDescription
IDictionary<object, TCache>

GetCacheUniqueKeyFunc

Declaration
    public Func<TCache, object> GetCacheUniqueKeyFunc { get; set; }
Property Value
TypeDescription
Func<TCache, object>

GetInputUniqueKeyFunc

Declaration
    public Func<TInput, object> GetInputUniqueKeyFunc { get; set; }
Property Value
TypeDescription
Func<TInput, object>

MaxCacheSize

Declaration
    public int MaxCacheSize { get; set; }
Property Value
TypeDescription
int

Records

Declaration
    public IEnumerable<TCache> Records { get; }
Property Value
TypeDescription
IEnumerable<TCache>

Methods

Add(TInput)

Declaration
    public void Add(TInput row)
Parameters
TypeNameDescription
TInputrow

Add(TInput[])

Declaration
    public void Add(TInput[] batch)
Parameters
TypeNameDescription
TInput[]batch

Contains(TInput)

Declaration
    public bool Contains(TInput row)
Parameters
TypeNameDescription
TInputrow
Returns
TypeDescription
bool

Contains(TInput[])

Declaration
    public bool Contains(TInput[] batch)
Parameters
TypeNameDescription
TInput[]batch
Returns
TypeDescription
bool

Init()

Declaration
    public void Init()

Implements