Table of Contents

Interface ISelectionsManager

Namespace
ZeroInstall.Services
Assembly
ZeroInstall.Services.dll

Provides methods for filtering Selections.

public interface ISelectionsManager
Extension Methods

Remarks

Implementations of this interface are immutable and thread-safe.

Methods

GetDiff(Selections, Selections)

Generates a list of differences between two selections.

IEnumerable<SelectionsDiffNode> GetDiff(Selections oldSelections, Selections newSelections)

Parameters

oldSelections Selections

The old selections to base the comparison on.

newSelections Selections

The new selections to compare against.

Returns

IEnumerable<SelectionsDiffNode>

GetImplementations(IEnumerable<ImplementationSelection>)

Retrieves the original Implementations these selections were based on.

IEnumerable<Implementation> GetImplementations(IEnumerable<ImplementationSelection> selections)

Parameters

selections IEnumerable<ImplementationSelection>

The ImplementationSelections to map back to Implementations.

Returns

IEnumerable<Implementation>

GetTree(Selections)

Generates a tree representation of the dependencies within the selections.

NamedCollection<SelectionsTreeNode> GetTree(Selections selections)

Parameters

selections Selections

Returns

NamedCollection<SelectionsTreeNode>

GetUncached(IEnumerable<ImplementationSelection>)

Returns a list of any downloadable ImplementationSelections that are missing from an IImplementationStore.

IEnumerable<ImplementationSelection> GetUncached(IEnumerable<ImplementationSelection> selections)

Parameters

selections IEnumerable<ImplementationSelection>

The selections to search for ImplementationSelections that are missing.

Returns

IEnumerable<ImplementationSelection>

Remarks

Feed files may be downloaded, no implementations are downloaded.

Exceptions

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.