diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-01-03 14:01:05 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-01-08 21:00:25 -0500 |
| commit | 1b50cd00ec7b81a8c571a8a50ca46c286fac2295 (patch) | |
| tree | 839e31432c68da1cee220989d5e7dab3308a23b4 /MediaBrowser.Common.Implementations/Updates | |
| parent | ed66d1a80cd6d057b687823c14c455e5779f8e57 (diff) | |
update github updater
Diffstat (limited to 'MediaBrowser.Common.Implementations/Updates')
| -rw-r--r-- | MediaBrowser.Common.Implementations/Updates/GithubUpdater.cs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/MediaBrowser.Common.Implementations/Updates/GithubUpdater.cs b/MediaBrowser.Common.Implementations/Updates/GithubUpdater.cs index b5ccebd2a..a6dcc53d0 100644 --- a/MediaBrowser.Common.Implementations/Updates/GithubUpdater.cs +++ b/MediaBrowser.Common.Implementations/Updates/GithubUpdater.cs @@ -25,7 +25,7 @@ namespace MediaBrowser.Common.Implementations.Updates _cacheLength = cacheLength; } - public async Task<CheckForUpdateResult> CheckForUpdateResult(string organzation, string repository, Version minVersion, bool includePrerelease, string assetFilename, string packageName, string targetFilename, CancellationToken cancellationToken) + public async Task<CheckForUpdateResult> CheckForUpdateResult(string organzation, string repository, Version minVersion, bool includePrerelease, string[] excludeSuffixes, string assetFilename, string packageName, string targetFilename, CancellationToken cancellationToken) { var url = string.Format("https://api.github.com/repos/{0}/{1}/releases", organzation, repository); @@ -55,7 +55,7 @@ namespace MediaBrowser.Common.Implementations.Updates { var obj = _jsonSerializer.DeserializeFromStream<RootObject[]>(stream); - var availableUpdate = CheckForUpdateResult(obj, minVersion, includePrerelease, assetFilename, packageName, targetFilename); + var availableUpdate = CheckForUpdateResult(obj, minVersion, includePrerelease, excludeSuffixes, assetFilename, packageName, targetFilename); return availableUpdate ?? new CheckForUpdateResult { @@ -64,13 +64,18 @@ namespace MediaBrowser.Common.Implementations.Updates } } - private CheckForUpdateResult CheckForUpdateResult(RootObject[] obj, Version minVersion, bool includePrerelease, string assetFilename, string packageName, string targetFilename) + private CheckForUpdateResult CheckForUpdateResult(RootObject[] obj, Version minVersion, bool includePrerelease, string[] excludeSuffixes, string assetFilename, string packageName, string targetFilename) { if (!includePrerelease) { obj = obj.Where(i => !i.prerelease).ToArray(); } + if (excludeSuffixes.Length > 0) + { + obj = obj.Where(i => !excludeSuffixes.Any(e => i.name.EndsWith(e, StringComparison.OrdinalIgnoreCase))).ToArray(); + } + // TODO: // Filter using name and check for suffixes such as -beta, -dev? |
