Show / Hide Table of Contents

Interface ISolver

Chooses a set of Implementations to satisfy the requirements of a program and its user.

Namespace: ZeroInstall.Services.Solvers
Assembly: ZeroInstall.Services.dll
Syntax
public interface ISolver
Remarks

Implementations of this interface are immutable and thread-safe.

Methods

Solve(Requirements)

Provides Selections that satisfy a set of Requirements.

Declaration
Selections Solve(Requirements requirements)
Parameters
Type Name Description
Requirements requirements

The requirements to satisfy.

Returns
Type Description
Selections

The selected ImplementationSelections.

Remarks

Feed files may be downloaded, signature validation is performed, implementations are not downloaded.

Exceptions
Type Condition
OperationCanceledException

The user canceled the task.

ArgumentException

requirements is incomplete.

IOException

A problem occurred while reading the feed file.

WebException

A problem occurred while fetching the feed file.

UnauthorizedAccessException

Access to the cache is not permitted.

SignatureException

The signature data of a remote feed file could not be verified.

SolverException

The solver was unable to provide Selections that fulfill the requirements.

Extension Methods

SolverExtensions.TrySolve(ISolver, Requirements)
In This Article
Back to top Copyright Bastian Eicher et al