Class InMemoryBlobCache
- Namespace
- Akavache
- Assembly
- Akavache.Core.dll
This class is an IBlobCache backed by a simple in-memory Dictionary.
Use it for testing / mocking purposes.
public class InMemoryBlobCache : ISecureBlobCache, IObjectBlobCache, IBlobCache, IDisposable, IEnableLogger
- Inheritance
-
InMemoryBlobCache
- Implements
-
- Extension Methods
-
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyDynamic<TSender, TRet>(TSender?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Expression?, Func<IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, IObservedChange<TSender?, object?>, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Func<T1, T2, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Func<T1, T2, T3, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, T1, T2, T3, T4>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Func<T1, T2, T3, T4, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, T1, T2, T3, T4, T5>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Func<T1, T2, T3, T4, T5, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, T1, T2, T3, T4, T5, T6>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Func<T1, T2, T3, T4, T5, T6, TRet>)
WhenAnyMixin.WhenAnyValue<TSender, T1, T2, T3, T4, T5, T6, T7>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>)
WhenAnyMixin.WhenAnyValue<TSender, TRet, T1, T2, T3, T4, T5, T6, T7>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Func<T1, T2, T3, T4, T5, T6, T7, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Expression<Func<TSender, T8>>, Expression<Func<TSender, T9>>, Expression<Func<TSender, T10>>, Expression<Func<TSender, T11>>, Expression<Func<TSender, T12>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, IObservedChange<TSender, T8>, IObservedChange<TSender, T9>, IObservedChange<TSender, T10>, IObservedChange<TSender, T11>, IObservedChange<TSender, T12>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, TRet>)
WhenAnyMixin.WhenAny<TSender, TRet, T1, T2, T3, T4, T5, T6, T7>(TSender?, Expression<Func<TSender, T1>>, Expression<Func<TSender, T2>>, Expression<Func<TSender, T3>>, Expression<Func<TSender, T4>>, Expression<Func<TSender, T5>>, Expression<Func<TSender, T6>>, Expression<Func<TSender, T7>>, Func<IObservedChange<TSender, T1>, IObservedChange<TSender, T2>, IObservedChange<TSender, T3>, IObservedChange<TSender, T4>, IObservedChange<TSender, T5>, IObservedChange<TSender, T6>, IObservedChange<TSender, T7>, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Expression<Func<TSender, IObservable<T7>?>>, Expression<Func<TSender, IObservable<T8>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Expression<Func<TSender, IObservable<T7>?>>, Expression<Func<TSender, IObservable<T8>?>>, Expression<Func<TSender, IObservable<T9>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Expression<Func<TSender, IObservable<T7>?>>, Expression<Func<TSender, IObservable<T8>?>>, Expression<Func<TSender, IObservable<T9>?>>, Expression<Func<TSender, IObservable<T10>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Expression<Func<TSender, IObservable<T7>?>>, Expression<Func<TSender, IObservable<T8>?>>, Expression<Func<TSender, IObservable<T9>?>>, Expression<Func<TSender, IObservable<T10>?>>, Expression<Func<TSender, IObservable<T11>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Expression<Func<TSender, IObservable<T7>?>>, Expression<Func<TSender, IObservable<T8>?>>, Expression<Func<TSender, IObservable<T9>?>>, Expression<Func<TSender, IObservable<T10>?>>, Expression<Func<TSender, IObservable<T11>?>>, Expression<Func<TSender, IObservable<T12>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, T7?, T8?, T9?, T10?, T11?, T12?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet>(TSender?, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>, Expression<Func<TSender, IObservable<TRet>?>>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Func<T1?, T2?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Func<T1?, T2?, T3?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Func<T1?, T2?, T3?, T4?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Func<T1?, T2?, T3?, T4?, T5?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, TRet>)
WhenAnyObservableMixin.WhenAnyObservable<TSender, TRet, T1, T2, T3, T4, T5, T6, T7>(TSender?, Expression<Func<TSender, IObservable<T1>?>>, Expression<Func<TSender, IObservable<T2>?>>, Expression<Func<TSender, IObservable<T3>?>>, Expression<Func<TSender, IObservable<T4>?>>, Expression<Func<TSender, IObservable<T5>?>>, Expression<Func<TSender, IObservable<T6>?>>, Expression<Func<TSender, IObservable<T7>?>>, Func<T1?, T2?, T3?, T4?, T5?, T6?, T7?, TRet>)
Constructors
InMemoryBlobCache()
public InMemoryBlobCache()
InMemoryBlobCache(IEnumerable<KeyValuePair<string, byte[]>>)
public InMemoryBlobCache(IEnumerable<KeyValuePair<string, byte[]>> initialContents)
Parameters
initialContents
IEnumerable<KeyValuePair<string, byte[]>>
The initial contents of the cache.
InMemoryBlobCache(IScheduler)
public InMemoryBlobCache(IScheduler scheduler)
Parameters
scheduler
IScheduler
The scheduler to use for Observable based operations.
InMemoryBlobCache(IScheduler?, IEnumerable<KeyValuePair<string, byte[]>>?)
public InMemoryBlobCache(IScheduler? scheduler, IEnumerable<KeyValuePair<string, byte[]>>? initialContents)
Parameters
scheduler
IScheduler
The scheduler to use for Observable based operations.
initialContents
IEnumerable<KeyValuePair<string, byte[]>>
The initial contents of the cache.
Properties
ForcedDateTimeKind
Gets or sets the DateTimeKind handling for BSON readers to be forced.
public DateTimeKind? ForcedDateTimeKind { get; set; }
Property Value
- DateTimeKind?
Scheduler
Gets the IScheduler used to defer operations. By default, this is
BlobCache.TaskpoolScheduler.
public IScheduler Scheduler { get; protected set; }
Property Value
- IScheduler
Shutdown
Gets an Observable that fires after the Dispose completes successfully,
since there is no such thing as an AsyncDispose().
public IObservable<Unit> Shutdown { get; }
Property Value
- IObservable<Unit>
Methods
Dispose()
Dispose(bool)
Disposes of the managed memory inside the class.
protected virtual void Dispose(bool isDisposing)
Parameters
isDisposing
bool
If this is being called by the Dispose method.
Flush()
This method guarantees that all in-flight inserts have completed
and any indexes have been written to disk.
public IObservable<Unit> Flush()
Returns
- IObservable<Unit>
A signal indicating when the flush is complete.
Get(string)
Retrieve a value from the key-value cache. If the key is not in
the cache, this method should return an IObservable which
OnError's with KeyNotFoundException.
public IObservable<byte[]> Get(string key)
Parameters
key
string
The key to return asynchronously.
Returns
- IObservable<byte[]>
A Future result representing the byte data.
GetAllKeys()
Return all keys in the cache. Note that this method is normally
for diagnostic / testing purposes, and that it is not guaranteed
to be accurate with respect to in-flight requests.
public IObservable<IEnumerable<string>> GetAllKeys()
Returns
- IObservable<IEnumerable<string>>
A list of valid keys for the cache.
GetAllObjects<T>()
Return all objects of a specific Type in the cache.
public IObservable<IEnumerable<T>> GetAllObjects<T>()
Returns
- IObservable<IEnumerable<T>>
A Future result representing all objects in the cache
with the specified Type.
Type Parameters
T
The type of object associated with the blob.
GetCreatedAt(string)
Returns the time that the key was added to the cache, or returns
null if the key isn't in the cache.
public IObservable<DateTimeOffset?> GetCreatedAt(string key)
Parameters
key
string
The key to return the date for.
Returns
- IObservable<DateTimeOffset?>
The date the key was created on.
GetObjectCreatedAt<T>(string)
Returns the time that the object with the key was added to the cache, or returns
null if the key isn't in the cache.
public IObservable<DateTimeOffset?> GetObjectCreatedAt<T>(string key)
Parameters
key
string
The key to return the date for.
Returns
- IObservable<DateTimeOffset?>
The date the key was created on.
Type Parameters
T
The type of object associated with the blob.
GetObject<T>(string)
Get an object from the cache and deserialize it via the JSON
serializer.
public IObservable<T> GetObject<T>(string key)
Parameters
key
string
The key to look up in the cache.
Returns
- IObservable<T>
A Future result representing the object in the cache.
Type Parameters
T
The type of object associated with the blob.
Insert(string, byte[], DateTimeOffset?)
Insert a blob into the cache with the specified key and expiration
date.
public IObservable<Unit> Insert(string key, byte[] data, DateTimeOffset? absoluteExpiration = null)
Parameters
key
string
The key to use for the data.
data
byte[]
The data to save in the cache.
absoluteExpiration
DateTimeOffset?
An optional expiration date.
After the specified date, the key-value pair should be removed.
Returns
- IObservable<Unit>
A signal to indicate when the key has been inserted.
InsertObject<T>(string, T, DateTimeOffset?)
Insert an object into the cache, via the JSON serializer.
public IObservable<Unit> InsertObject<T>(string key, T value, DateTimeOffset? absoluteExpiration = null)
Parameters
key
string
The key to associate with the object.
value
T
The object to serialize.
absoluteExpiration
DateTimeOffset?
An optional expiration date.
Returns
- IObservable<Unit>
A Future result representing the completion of the insert.
Type Parameters
T
The type of object associated with the blob.
Invalidate(string)
Remove a key from the cache. If the key doesn't exist, this method
should do nothing and return (not throw KeyNotFoundException).
public IObservable<Unit> Invalidate(string key)
Parameters
key
string
The key to remove from the cache.
Returns
- IObservable<Unit>
A signal indicating when the invalidate is complete.
InvalidateAll()
Invalidate all entries in the cache (i.e. clear it). Note that
this method is blocking and incurs a significant performance
penalty if used while the cache is being used on other threads.
public IObservable<Unit> InvalidateAll()
Returns
- IObservable<Unit>
A signal indicating when the invalidate is complete.
InvalidateAllObjects<T>()
Invalidates all objects of the specified type. To invalidate all
objects regardless of type, use InvalidateAll.
public IObservable<Unit> InvalidateAllObjects<T>()
Returns
- IObservable<Unit>
A Future result representing the completion of the invalidation.
Type Parameters
T
The type of object associated with the blob.
InvalidateObject<T>(string)
Invalidates a single object from the cache. It is important that the Type
Parameter for this method be correct, and you cannot use
IBlobCache.Invalidate to perform the same task.
public IObservable<Unit> InvalidateObject<T>(string key)
Parameters
key
string
The key to invalidate.
Returns
- IObservable<Unit>
A Future result representing the completion of the invalidation.
Type Parameters
T
The type of object associated with the blob.
OverrideGlobals(IDictionary<string, byte[]>, IScheduler?)
Overrides the global registrations with specified values.
public static InMemoryBlobCache OverrideGlobals(IDictionary<string, byte[]> initialContents, IScheduler? scheduler = null)
Parameters
initialContents
IDictionary<string, byte[]>
The default inner contents to use.
scheduler
IScheduler
The default scheduler to use.
Returns
- InMemoryBlobCache
A generated cache.
OverrideGlobals(IDictionary<string, object>, IScheduler?)
Overrides the global registrations with specified values.
public static InMemoryBlobCache OverrideGlobals(IDictionary<string, object> initialContents, IScheduler? scheduler = null)
Parameters
initialContents
IDictionary<string, object>
The default inner contents to use.
scheduler
IScheduler
The default scheduler to use.
Returns
- InMemoryBlobCache
A generated cache.
OverrideGlobals(IScheduler?, params KeyValuePair<string, byte[]>[])
Overrides the global registrations with specified values.
public static InMemoryBlobCache OverrideGlobals(IScheduler? scheduler = null, params KeyValuePair<string, byte[]>[] initialContents)
Parameters
scheduler
IScheduler
The default scheduler to use.
initialContents
KeyValuePair<string, byte[]>[]
The default inner contents to use.
Returns
- InMemoryBlobCache
A generated cache.
Vacuum()
This method eagerly removes all expired keys from the blob cache, as
well as does any cleanup operations that makes sense (Hint: on SQLite3
it does a Vacuum).
public IObservable<Unit> Vacuum()
Returns
- IObservable<Unit>
A signal indicating when the operation is complete.