IBlobCache interface¶
Defined in
Namespace: Akavache.Reactive
Assembly: Akavache.Reactive.dll
Full name: Akavache.Reactive.IBlobCache
Modifiers: public abstract
Summary¶
IBlobCache is the core database interface, it is an interface describing an asynchronous persistent key-value store.
Applies to
net10.0, net10.0-maccatalyst26.0, net10.0-desktop1.0, net10.0-browserwasm1.0, net10.0-tvos26.0, net10.0-windows10.0.19041, net10.0-macos26.0, net10.0-ios26.0, net10.0-android36.0, net9.0, net9.0-tvos18.0, net9.0-macos15.0, net9.0-maccatalyst18.0, net9.0-windows10.0.19041, net9.0-ios18.0, net9.0-desktop1.0, net8.0, net8.0-windows10.0.19041, net8.0-ios18.0, net8.0-maccatalyst18.0, net8.0-macos15.0, net8.0-tvos18.0, net8.0-ios17.5, net8.0-maccatalyst17.5, net8.0-macos14.5, netstandard2.1, net481, net462, net471
Class hierarchy
classDiagram
class IBlobCache
class IDisposable {
<>
}
IDisposable <|.. IBlobCache
Implements: IDisposable
Properties¶
| Name | Summary |
|---|---|
| Serializer | Gets the serializer. |
| Scheduler | Gets the IScheduler used to defer operations. By default, this is BlobCache.TaskpoolScheduler. |
| ForcedDateTimeKind | Gets or sets the DateTimeKind handling for BSON readers to be forced. |
Methods¶
| Name | Summary |
|---|---|
| Insert | Inserts the specified key/value pairs into the blob. |
| Get | 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. |
| GetAll | Gets a observable of key value pairs with the specified keys with their corresponding values. |
| 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... |
| GetCreatedAt | Gets a observable of key value pairs with the specified keys with their corresponding created DateTimeOffset if it's available. |
| Flush | This method guarantees that all in-flight inserts have completed and any indexes have been written to disk. |
| Invalidate | Remove a key from the cache. If the key doesn't exist, this method should do nothing and return (not throw KeyNotFoundException). |
| InvalidateAll | Invalidates all entries for the specified type. |
| 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). |
| UpdateExpiration | Updates the expiration date for an existing cache entry without reading or writing the cached data. This is useful when a server returns a NotModified response and you want to extend the... |
Extension members¶
BitmapImageExtensions.LoadImageBitmapImageExtensions.LoadImageBitmapImageExtensions.LoadImageBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.LoadImageFromUrlBitmapImageExtensions.SaveImageBitmapImageExtensions.SaveImageImageCacheExtensions.LoadImagesImageCacheExtensions.LoadImagesImageCacheExtensions.LoadImagesImageCacheExtensions.PreloadImagesFromUrlsImageCacheExtensions.PreloadImagesFromUrls- [
ImageCacheExtensions.LoadImageWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[])] - [
ImageCacheExtensions.LoadImageWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.Nullable)] - [
ImageCacheExtensions.LoadImageWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.Nullable,System.Nullable{System.Single})] - [
ImageCacheExtensions.LoadImageFromUrlWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageFromUrlWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[])] - [
ImageCacheExtensions.LoadImageFromUrlWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageFromUrlWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.Boolean)] - [
ImageCacheExtensions.LoadImageFromUrlWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageFromUrlWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.Boolean,System.Nullable)] - [
ImageCacheExtensions.LoadImageFromUrlWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageFromUrlWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.Boolean,System.Nullable,System.Nullable{System.Single})] - [
ImageCacheExtensions.LoadImageFromUrlWithFallback][M:Akavache.Reactive.Drawing.ImageCacheExtensions.LoadImageFromUrlWithFallback(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.Boolean,System.Nullable,System.Nullable{System.Single},System.Nullable{System.DateTimeOffset})] ImageCacheExtensions.CreateAndCacheThumbnailImageCacheExtensions.CreateAndCacheThumbnailImageCacheExtensions.GetImageSizeImageCacheExtensions.ClearImageCacheHttpExtensions.SetHttpServiceHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrl- [
HttpExtensions.DownloadUrl][M:Akavache.Reactive.HttpExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.String,System.Net.Http.HttpMethod,System.Collections.Generic.IEnumerable},System.Boolean,System.Nullable{System.DateTimeOffset})] HttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrl- [
HttpExtensions.DownloadUrl][M:Akavache.Reactive.HttpExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.Uri,System.Net.Http.HttpMethod,System.Collections.Generic.IEnumerable},System.Boolean,System.Nullable{System.DateTimeOffset})] HttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrl- [
HttpExtensions.DownloadUrl][M:Akavache.Reactive.HttpExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.String,System.String,System.Net.Http.HttpMethod,System.Collections.Generic.IEnumerable},System.Boolean,System.Nullable{System.DateTimeOffset})] HttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrlHttpExtensions.DownloadUrl- [
HttpExtensions.DownloadUrl][M:Akavache.Reactive.HttpExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.String,System.Uri,System.Net.Http.HttpMethod,System.Collections.Generic.IEnumerable},System.Boolean,System.Nullable{System.DateTimeOffset})] HttpExtensions.DownloadUrlImageExtensions.LoadImageBytesImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlImageExtensions.LoadImageBytesFromUrlRelativeTimeDownloadExtensions.DownloadUrl- [
RelativeTimeDownloadExtensions.DownloadUrl][M:Akavache.Reactive.RelativeTimeDownloadExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.String,System.Net.Http.HttpMethod,System.TimeSpan,System.Collections.Generic.IEnumerable})] - [
RelativeTimeDownloadExtensions.DownloadUrl][M:Akavache.Reactive.RelativeTimeDownloadExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.String,System.Net.Http.HttpMethod,System.TimeSpan,System.Collections.Generic.IEnumerable},System.Boolean)] RelativeTimeDownloadExtensions.DownloadUrlRelativeTimeDownloadExtensions.DownloadUrl- [
RelativeTimeDownloadExtensions.DownloadUrl][M:Akavache.Reactive.RelativeTimeDownloadExtensions.DownloadUrl(Akavache.Reactive.IBlobCache,System.Uri,System.Net.Http.HttpMethod,System.TimeSpan,System.Collections.Generic.IEnumerable},System.Boolean)] - [
RelativeTimeExtensions.Insert][M:Akavache.Reactive.RelativeTimeExtensions.Insert(Akavache.Reactive.IBlobCache,System.String,System.Byte[],System.TimeSpan)] RelativeTimeExtensions.InsertObjectRelativeTimeExtensions.UpdateExpirationRelativeTimeExtensions.UpdateExpirationRelativeTimeExtensions.UpdateExpirationRelativeTimeExtensions.UpdateExpirationSerializerExtensions.InsertObjectsSerializerExtensions.InsertObjectsSerializerExtensions.InsertObjectsSerializerExtensions.InsertObjectsSerializerExtensions.GetObjectsSerializerExtensions.InsertObjectSerializerExtensions.InsertObjectSerializerExtensions.GetObjectSerializerExtensions.GetAllObjectsSerializerExtensions.GetObjectCreatedAtSerializerExtensions.InvalidateObjectSerializerExtensions.InvalidateObjectsSerializerExtensions.InvalidateAllObjectsSerializerExtensions.InsertAllObjectsSerializerExtensions.InsertAllObjectsSerializerExtensions.GetOrFetchObjectSerializerExtensions.GetOrFetchObjectSerializerExtensions.GetOrFetchObjectSerializerExtensions.GetOrFetchObjectSerializerExtensions.GetOrCreateObjectSerializerExtensions.GetAndFetchLatestSerializerExtensions.GetAndFetchLatestSerializerExtensions.GetAndFetchLatestSerializerExtensions.GetAndFetchLatest- [
SerializerExtensions.GetAndFetchLatest][M:Akavache.Reactive.SerializerExtensions.GetAndFetchLatest--1(Akavache.Reactive.IBlobCache,System.String,System.Func},System.Func{System.DateTimeOffset,System.Boolean},System.Nullable{System.DateTimeOffset},System.Boolean,System.Func{--0,System.Boolean})] SerializerExtensions.GetAndFetchLatestSerializerExtensions.GetAndFetchLatestSerializerExtensions.GetAndFetchLatestSerializerExtensions.GetAndFetchLatest- [
SerializerExtensions.GetAndFetchLatest][M:Akavache.Reactive.SerializerExtensions.GetAndFetchLatest--1(Akavache.Reactive.IBlobCache,System.String,System.Func},System.Func{System.DateTimeOffset,System.Boolean},System.Nullable{System.DateTimeOffset},System.Boolean,System.Func{--0,System.Boolean})] SerializerExtensions.GetAllKeysSafeSerializerExtensions.GetAllKeysSafeSerializerExtensions.GetAllKeysSafe