Table of Contents

Class BacktrackingSolver

Namespace
ZeroInstall.Services.Solvers
Assembly
ZeroInstall.Services.dll

Uses limited backtracking to solve Requirements. Does not find all possible solutions!

public class BacktrackingSolver : ISolver
Inheritance
BacktrackingSolver
Implements
Inherited Members
Extension Methods

Remarks

This class is immutable and thread-safe.

Constructors

BacktrackingSolver(ISelectionCandidateProvider)

Uses limited backtracking to solve Requirements. Does not find all possible solutions!

public BacktrackingSolver(ISelectionCandidateProvider candidateProvider)

Parameters

candidateProvider ISelectionCandidateProvider

Remarks

This class is immutable and thread-safe.

Methods

Solve(Requirements)

Provides Selections that satisfy a set of Requirements.

public Selections Solve(Requirements requirements)

Parameters

requirements Requirements

The requirements to satisfy.

Returns

Selections

The selected ImplementationSelections.

Remarks

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

Exceptions

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.