Class SelectionsManager
Provides methods for filtering Selections.
Implements
Namespace: ZeroInstall.Services
Assembly: ZeroInstall.Services.dll
Syntax
public class SelectionsManager : Object, ISelectionsManager
Remarks
This class is immutable and thread-safe.
Constructors
SelectionsManager(IFeedManager, IImplementationStore, IPackageManager)
Declaration
public SelectionsManager(IFeedManager feedManager, IImplementationStore implementationStore, IPackageManager packageManager)
Parameters
Type | Name | Description |
---|---|---|
IFeedManager | feedManager | |
IImplementationStore | implementationStore | |
IPackageManager | packageManager |
Methods
GetDiff(Selections, Selections)
Generates a list of differences between two selections.
Declaration
public IEnumerable<SelectionsDiffNode> GetDiff(Selections oldSelections, Selections newSelections)
Parameters
Type | Name | Description |
---|---|---|
Selections | oldSelections | The old selections to base the comparison on. |
Selections | newSelections | The new selections to compare against. |
Returns
Type | Description |
---|---|
IEnumerable<SelectionsDiffNode> |
GetImplementations(IEnumerable<ImplementationSelection>)
Retrieves the original Implementations these selections were based on.
Declaration
public IEnumerable<Implementation> GetImplementations(IEnumerable<ImplementationSelection> selections)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<ImplementationSelection> | selections | The ImplementationSelections to map back to Implementations. |
Returns
Type | Description |
---|---|
IEnumerable<Implementation> |
GetTree(Selections)
Generates a tree representation of the dependencies within the selections.
Declaration
public NamedCollection<SelectionsTreeNode> GetTree(Selections selections)
Parameters
Type | Name | Description |
---|---|---|
Selections | selections |
Returns
Type | Description |
---|---|
NamedCollection<SelectionsTreeNode> |
GetUncached(IEnumerable<ImplementationSelection>)
Returns a list of any downloadable ImplementationSelections that are missing from an IImplementationStore.
Declaration
public IEnumerable<ImplementationSelection> GetUncached(IEnumerable<ImplementationSelection> selections)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<ImplementationSelection> | selections | The selections to search for ImplementationSelections that are missing. |
Returns
Type | Description |
---|---|
IEnumerable<ImplementationSelection> |
Remarks
Feed files may be downloaded, no implementations are downloaded.
Exceptions
Type | Condition |
---|---|
KeyNotFoundException | A Feed or Implementation is missing. |
IOException | A problem occurred while reading the feed file. |
UnauthorizedAccessException | Read access to the cache is not permitted. |
InvalidDataException | The feed file could not be parsed. |