IUpdateSource interface
Namespace: Velopack.Sources
Abstraction for finding and downloading updates from a package source / repository. An implementation may copy a file from a local repository, download from a web address, or even use third party services and parse proprietary data to produce a package feed.
public interface IUpdateSource
Methods
| Method | Summary |
|---|---|
GetReleaseFeed | Retrieve the list of available remote releases from the package source. These releases |
DownloadReleaseEntry | Download the specified VelopackAsset to the provided local file path. |
GetReleaseFeed(logger, appId, channel, stagingId, latestLocalRelease)
Task<VelopackAssetFeed> GetReleaseFeed(IVelopackLogger logger, string? appId, string channel, Guid? stagingId = null, VelopackAsset? latestLocalRelease = null)
Retrieve the list of available remote releases from the package source. These releases
can subsequently be downloaded with DownloadReleaseEntry.
Parameters
| Name | Type | Description |
|---|---|---|
logger | IVelopackLogger | The logger to use for any diagnostic messages. |
appId | string | |
channel | string | Release channel to filter packages by. Can be null, which is the default channel for this operating system. |
stagingId | Guid? | A persistent user-id, used for calculating whether a specific release should be available to this user or not. (eg, for the purposes of rolling out an update to only a small portion of users at a time). |
latestLocalRelease | VelopackAsset | The latest / current local release. If specified, metadata from this package may be provided to the remote server (such as package id, or cpu architecture) to ensure that the correct package is downloaded for this user. |
Returns Task<VelopackAssetFeed> — An array of VelopackAsset objects that are available for download
and are applicable to this user.
DownloadReleaseEntry(logger, releaseEntry, localFile, progress, cancelToken)
Task DownloadReleaseEntry(IVelopackLogger logger, VelopackAsset releaseEntry, string localFile, Action<int> progress, CancellationToken cancelToken = default)
Download the specified VelopackAsset to the provided local file path.
Parameters
| Name | Type | Description |
|---|---|---|
logger | IVelopackLogger | The logger to use for any diagnostic messages. |
releaseEntry | VelopackAsset | The release to download. |
localFile | string | The path on the local disk to store the file. If this file exists, it will be overwritten. |
progress | Action<int> | This delegate will be executed with values from 0-100 as the download is being processed. |
cancelToken | CancellationToken | A token to use to cancel the request. |
Returns Task
Generated from Velopack 1.1.1