Zero Install .NET API 2.20.0
ZeroInstall.Services.ServiceProvider Class Reference

Instantiates requested services transparently on first use. Handles dependency injection internally. Use exactly one instance of the service provider per user request to ensure consistent state during execution. More...

Inheritance diagram for ZeroInstall.Services.ServiceProvider:
ZeroInstall.Commands.ScopedOperation ZeroInstall.Commands.CliCommand ZeroInstall.Commands.Basic.AddRemoveFeedCommand ZeroInstall.Commands.Basic.Configure ZeroInstall.Commands.Basic.DefaultCommand ZeroInstall.Commands.Basic.Digest ZeroInstall.Commands.Basic.ExportHelp ZeroInstall.Commands.Basic.Fetch ZeroInstall.Commands.Basic.Import ZeroInstall.Commands.Basic.List ZeroInstall.Commands.Basic.ListFeeds ZeroInstall.Commands.Basic.Search ZeroInstall.Commands.Basic.Selection ZeroInstall.Commands.Basic.StoreMan.StoreSubCommand ZeroInstall.Commands.CliMultiCommand ZeroInstall.Commands.Desktop.Central ZeroInstall.Commands.Desktop.IntegrationCommand ZeroInstall.Commands.Desktop.Self.SelfSubCommand

Public Member Functions

 ServiceProvider (ITaskHandler handler)
 Creates a new service provider. More...
 

Properties

virtual ITaskHandler Handler [get]
 A callback object used when the the user needs to be asked questions or informed about download and IO tasks.
 
virtual Config Config [get]
 User settings controlling network behaviour, solving, etc.
 
virtual IImplementationStore ImplementationStore = ImplementationStores.Default() [getset]
 Describes an object that allows the storage and retrieval of Implementation directories.
 
virtual IOpenPgp OpenPgp = Store.Trust.OpenPgp.Verifying() [getset]
 Provides access to an encryption/signature system compatible with the OpenPGP standard.
 
virtual IFeedCache FeedCache [get]
 Provides access to a cache of Feeds that were downloaded via HTTP(S).
 
virtual ITrustManager TrustManager [get]
 Methods for verifying signatures and user trust.
 
virtual IFeedManager FeedManager [get]
 Allows configuration of the source used to request Feeds.
 
virtual ICatalogManager CatalogManager [get]
 Provides access to remote and local Catalogs. Handles downloading, signature verification and caching.
 
virtual IPackageManager PackageManager [get]
 An external package manager that can install PackageImplementations.
 
virtual ISelectionCandidateProvider SelectionCandidateProvider [get]
 Generates SelectionCandidates for the Solver to choose among.
 
virtual ISolver Solver [get]
 Chooses a set of Implementations to satisfy the requirements of a program and its user.
 
virtual IFetcher Fetcher [get]
 Used to download missing Implementations.
 
virtual IExecutor Executor [get]
 Executes a Selections document as a program using dependency injection.
 
virtual ISelectionsManager SelectionsManager [get]
 Provides methods for filtering Selections.
 

Detailed Description

Instantiates requested services transparently on first use. Handles dependency injection internally. Use exactly one instance of the service provider per user request to ensure consistent state during execution.

This class is thread-safe.

Constructor & Destructor Documentation

◆ ServiceProvider()

ZeroInstall.Services.ServiceProvider.ServiceProvider ( ITaskHandler  handler)
inline

Creates a new service provider.

Parameters
handlerA callback object used when the the user needs to be asked questions or informed about download and IO tasks.

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