// --------------------------------------------------------------------------------------------------------------------
//
// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
//
//
// An Interface for the Update Service
//
// --------------------------------------------------------------------------------------------------------------------
namespace HandBrakeWPF.Services.Interfaces
{
using System;
using HandBrakeWPF.Model;
///
/// An Interface for the Update Service
///
public interface IUpdateService
{
///
/// Perform an update check at application start, but only daily, weekly or monthly depending on the users settings.
///
///
/// The callback.
///
void PerformStartupUpdateCheck(Action callback);
///
/// Perform an Update check and execute the Action when complete.
///
///
/// The callback.
///
void CheckForUpdates(Action callback);
///
/// Download the update file.
///
///
/// The url.
///
///
/// The expected SHA-1 Hash.
///
///
/// The complete.
///
///
/// The progress.
///
void DownloadFile(string url, string expectedSHA1Hash, Action completed, Action progress);
}
}