Interface IImplementationSink
- Namespace
- ZeroInstall.Store.Implementations
- Assembly
- ZeroInstall.Store.dll
Accepts implementations and stores them.
public interface IImplementationSink
Methods
Add(ManifestDigest, Action<IBuilder>)
Adds a new implementation.
void Add(ManifestDigest manifestDigest, Action<IBuilder> build)
Parameters
manifestDigest
ManifestDigestThe digest the implementation is supposed to match.
build
Action<IBuilder>Callback for building the implementation.
Exceptions
- OperationCanceledException
The user canceled the task.
- ImplementationAlreadyInStoreException
There is already an implementation with the specified
manifestDigest
in the store.- UnauthorizedAccessException
Access to a resource was denied.
- IOException
An IO operation failed.
- DigestMismatchException
The implementation's content doesn't match the
manifestDigest
.
Contains(ManifestDigest)
Determines whether the sink/store contains an implementation identified by a specific ManifestDigest.
bool Contains(ManifestDigest manifestDigest)
Parameters
manifestDigest
ManifestDigestThe digest of the implementation to check for.
Returns
- bool
true
if the specified implementation is available in the store;false
if the specified implementation is not available in the store or if read access to the store is not permitted.
Remarks
If read access to the store is not permitted, no exception is thrown.