Xamarin.CustomCache 1.0.4

dotnet add package Xamarin.CustomCache --version 1.0.4                
NuGet\Install-Package Xamarin.CustomCache -Version 1.0.4                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Xamarin.CustomCache" Version="1.0.4" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Xamarin.CustomCache --version 1.0.4                
#r "nuget: Xamarin.CustomCache, 1.0.4"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Xamarin.CustomCache as a Cake Addin
#addin nuget:?package=Xamarin.CustomCache&version=1.0.4

// Install Xamarin.CustomCache as a Cake Tool
#tool nuget:?package=Xamarin.CustomCache&version=1.0.4                

CustomCache

A Shared Xamarin component for Caching custom data on to disk

Usage:

using Subsystems.Cache.External;
....
....
    private CMPCacheProxy _cacheProxy;

Initialize

    var cachedFolderPathString = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
    _cacheProxy = new CMPCacheProxy(cachedFolderPathString, <sizeLimitInKB>); // e.g. 5 * 1024

Expiry

    _cacheProxy.ExpiryDays(<Expiry_Days>); // Cache will invalidate after expiry from Creation or Last Update
    ....
    ....

    _cacheProxy.ExpiryDays(<Expiry_Days>);
  OR,
    _cacheProxy.ExpiryMonths(<Expiry_Months>);      
  OR,
    _cacheProxy.ExpiryYears(<Expiry_Years>);
  OR,
    _cacheProxy.ExpiryHours(<Expiry_Years>);
  OR,
    _cacheProxy.ExpiryMinutes(<Expiry_Minutes>);
  OR,
    _cacheProxy.ExpirySeconds(<Expiry_Seconds>);

Cache & Retrieve:

string cacheString = null;				
byte[] retrievedBytes = _cacheProxy.RetieveItem("testfile81");
if (retrievedBytes != null)
{
    cacheString = System.Text.Encoding.UTF8.GetString(retrievedBytes);
    Console.WriteLine("cacheString:" + cacheString);
}
else
{

    cacheString = "Test String38";
    byte[] cacheBytes = System.Text.Encoding.UTF8.GetBytes(cacheString);
    _cacheProxy.CacheItem(cacheBytes, "testfile81");

}
Product Compatible and additional computed target framework versions.
MonoAndroid monoandroid90 is compatible. 
Xamarin.iOS xamarinios10 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Xamarin.CustomCache:

Package Downloads
Xamarin.ImageLoader

A Reusable component to Download Image directly from URL. This also supportes Caching the downloaded images efficiently

Xamarin.CustomImageView.iOS

A custom ImageView component for iOS with inteligent Caching, Handle Cache expiry, Automatic Download

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.4 1,220 11/9/2018
1.0.3 728 10/22/2018
1.0.2 857 8/1/2018
1.0.1 791 8/1/2018
1.0.0 804 8/1/2018

Linked to CustomFileManager dependency
Issue fixes
Code refactoring