Zero Install .NET API 2.20.0
ZeroInstall.Store.Feeds.FeedCache Class Reference

A disk-based cache of Feeds that were downloaded via HTTP(S). Once a feed has been added to this cache it is considered trusted (signatures are not checked again). More...

Inheritance diagram for ZeroInstall.Store.Feeds.FeedCache:
ZeroInstall.Store.Feeds.IFeedCache

Public Member Functions

 FeedCache (string path, IOpenPgp openPgp)
 Creates a new disk-based cache. More...
 
bool Contains (FeedUri feedUri)
 Determines whether this cache contains a local copy of a Feed identified by a specific URL. More...
 
IEnumerable< FeedUriListAll ()
 Returns a list of all Feeds stored in this cache. More...
 
Feed GetFeed (FeedUri feedUri)
 Gets a specific Feed from this cache. More...
 
IEnumerable< OpenPgpSignatureGetSignatures (FeedUri feedUri)
 Determines which signatures a Feed from this cache is signed with. More...
 
string GetPath (FeedUri feedUri)
 Gets the file path of the on-disk representation of a specific Feed. More...
 
void Add (FeedUri feedUri, byte[] data)
 Adds a new Feed to the cache. Only do this after the feed source has been verified and trusted and replay attacks filtered! More...
 
void Remove (FeedUri feedUri)
 Removes a specific Feed from this cache. No exception is thrown if the specified Feed is not in the cache. More...
 

Properties

string Path [get]
 The directory containing the cached Feeds.
 

Detailed Description

A disk-based cache of Feeds that were downloaded via HTTP(S). Once a feed has been added to this cache it is considered trusted (signatures are not checked again).

This class is immutable and thread-safe.

Constructor & Destructor Documentation

◆ FeedCache()

ZeroInstall.Store.Feeds.FeedCache.FeedCache ( string  path,
IOpenPgp  openPgp 
)
inline

Creates a new disk-based cache.

Parameters
pathA fully qualified directory path.
openPgpProvides access to an encryption/signature system compatible with the OpenPGP standard.

Member Function Documentation

◆ Add()

void ZeroInstall.Store.Feeds.FeedCache.Add ( FeedUri  feedUri,
byte[]  data 
)
inline

Adds a new Feed to the cache. Only do this after the feed source has been verified and trusted and replay attacks filtered!

Implements ZeroInstall.Store.Feeds.IFeedCache.

◆ Contains()

bool ZeroInstall.Store.Feeds.FeedCache.Contains ( FeedUri  feedUri)
inline

Determines whether this cache contains a local copy of a Feed identified by a specific URL.

Implements ZeroInstall.Store.Feeds.IFeedCache.

◆ GetFeed()

Feed ZeroInstall.Store.Feeds.FeedCache.GetFeed ( FeedUri  feedUri)
inline

Gets a specific Feed from this cache.

Implements ZeroInstall.Store.Feeds.IFeedCache.

◆ GetPath()

string ZeroInstall.Store.Feeds.FeedCache.GetPath ( FeedUri  feedUri)
inline

Gets the file path of the on-disk representation of a specific Feed.

Implements ZeroInstall.Store.Feeds.IFeedCache.

◆ GetSignatures()

IEnumerable< OpenPgpSignature > ZeroInstall.Store.Feeds.FeedCache.GetSignatures ( FeedUri  feedUri)
inline

Determines which signatures a Feed from this cache is signed with.

Implements ZeroInstall.Store.Feeds.IFeedCache.

◆ ListAll()

IEnumerable< FeedUri > ZeroInstall.Store.Feeds.FeedCache.ListAll ( )
inline

Returns a list of all Feeds stored in this cache.

Implements ZeroInstall.Store.Feeds.IFeedCache.

◆ Remove()

void ZeroInstall.Store.Feeds.FeedCache.Remove ( FeedUri  feedUri)
inline

Removes a specific Feed from this cache. No exception is thrown if the specified Feed is not in the cache.

Implements ZeroInstall.Store.Feeds.IFeedCache.


The documentation for this class was generated from the following file: