using MediaBrowser.Model.Querying;
using MediaBrowser.Model.Sync;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Sync
{
public interface ISyncManager
{
///
/// Creates the job.
///
/// The request.
/// Task.
Task> CreateJob(SyncJobRequest request);
///
/// Creates the schedule.
///
/// The request.
/// Task.
Task CreateSchedule(SyncScheduleRequest request);
///
/// Gets the jobs.
///
/// QueryResult<SyncJob>.
QueryResult GetJobs(SyncJobQuery query);
///
/// Gets the schedules.
///
/// QueryResult<SyncSchedule>.
QueryResult GetSchedules(SyncScheduleQuery query);
///
/// Gets the job.
///
/// The identifier.
/// SyncJob.
SyncJob GetJob(string id);
///
/// Gets the schedule.
///
/// The identifier.
/// SyncSchedule.
SyncSchedule GetSchedule(string id);
///
/// Cancels the job.
///
/// The identifier.
/// Task.
Task CancelJob(string id);
///
/// Cancels the schedule.
///
/// The identifier.
/// Task.
Task CancelSchedule(string id);
}
}