Zero Install .NET API 2.20.0
ZeroInstall.Store.ViewModel.ImplementationNode Class Reference

Models information about an implementation in an IImplementationStore for display in a UI. More...

Inheritance diagram for ZeroInstall.Store.ViewModel.ImplementationNode:
ZeroInstall.Store.ViewModel.StoreNode ZeroInstall.Store.ViewModel.CacheNode NanoByte::Common::INamed ZeroInstall.Store.ViewModel.OrphanedImplementationNode ZeroInstall.Store.ViewModel.OwnedImplementationNode

Public Member Functions

override void Delete (ITaskHandler handler)
 Deletes this implementation from the IImplementationStore it is located in. More...
 
void Verify (ITaskHandler handler)
 Verify this implementation is undamaged. More...
 
override string ToString ()
 Creates string representation suitable for console output.
 
- Public Member Functions inherited from ZeroInstall.Store.ViewModel.CacheNode
bool Equals (CacheNode? other)
 
override bool Equals (object? obj)
 
override int GetHashCode ()
 

Protected Member Functions

 ImplementationNode (ManifestDigest digest, IImplementationStore implementationStore)
 Creates a new implementation node. More...
 
- Protected Member Functions inherited from ZeroInstall.Store.ViewModel.StoreNode
 StoreNode (IImplementationStore implementationStore)
 Creates a new store node. More...
 

Properties

string Digest [get]
 The digest identifying the implementation in the store.
 
long Size [get]
 The total size of the implementation in bytes.
 
string SizeHuman [get]
 The total size of the implementation in human-readable form.
 
override? string Path [get]
 
- Properties inherited from ZeroInstall.Store.ViewModel.StoreNode
abstract ? string Path [get]
 The file system path of the element.
 
- Properties inherited from ZeroInstall.Store.ViewModel.CacheNode
abstract string Name [getset]
 The full name of the node used for tree hierarchies.
 
- Properties inherited from NanoByte::Common::INamed
string Name
 

Additional Inherited Members

- Public Attributes inherited from ZeroInstall.Store.ViewModel.CacheNode
int SuffixCounter
 A counter that can be used to prevent naming collisions. More...
 
- Protected Attributes inherited from ZeroInstall.Store.ViewModel.StoreNode
readonly IImplementationStore ImplementationStore
 The store containing the element.
 

Detailed Description

Models information about an implementation in an IImplementationStore for display in a UI.

Constructor & Destructor Documentation

◆ ImplementationNode()

ZeroInstall.Store.ViewModel.ImplementationNode.ImplementationNode ( ManifestDigest  digest,
IImplementationStore  implementationStore 
)
inlineprotected

Creates a new implementation node.

Parameters
digestThe digest identifying the implementation.
implementationStoreThe IImplementationStore the implementation is located in.
Exceptions
FormatExceptionThe manifest file is not valid.
IOExceptionThe manifest file could not be read.
UnauthorizedAccessExceptionRead access to the file is not permitted.

Member Function Documentation

◆ Delete()

override void ZeroInstall.Store.ViewModel.ImplementationNode.Delete ( ITaskHandler  handler)
inlinevirtual

Deletes this implementation from the IImplementationStore it is located in.

Parameters
handlerA callback object used when the the user needs to be asked questions or informed about IO tasks.
Exceptions
KeyNotFoundExceptionNo matching implementation could be found in the IImplementationStore.
IOExceptionThe implementation could not be deleted.
UnauthorizedAccessExceptionWrite access to the store is not permitted.

Implements ZeroInstall.Store.ViewModel.CacheNode.

◆ Verify()

void ZeroInstall.Store.ViewModel.ImplementationNode.Verify ( ITaskHandler  handler)

Verify this implementation is undamaged.

Parameters
handlerA callback object used when the the user needs to be asked questions or informed about IO tasks.
Exceptions
OperationCanceledExceptionThe user canceled the task.
IOExceptionThe entry's directory could not be processed.
UnauthorizedAccessExceptionRead access to the entry's directory is not permitted.

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