jellyfin-server/MediaBrowser.Controller/Sync/ISyncRepository.cs

74 lines
2.1 KiB
C#
Raw Normal View History

2014-07-26 17:30:15 +00:00
using MediaBrowser.Model.Querying;
using MediaBrowser.Model.Sync;
2014-12-11 06:20:28 +00:00
using System.Collections.Generic;
2014-07-26 17:30:15 +00:00
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Sync
{
public interface ISyncRepository
{
/// <summary>
/// Gets the job.
/// </summary>
/// <param name="id">The identifier.</param>
/// <returns>SyncJob.</returns>
SyncJob GetJob(string id);
/// <summary>
/// Creates the specified job.
/// </summary>
/// <param name="job">The job.</param>
/// <returns>Task.</returns>
Task Create(SyncJob job);
/// <summary>
/// Updates the specified job.
/// </summary>
/// <param name="job">The job.</param>
/// <returns>Task.</returns>
Task Update(SyncJob job);
2014-12-11 06:20:28 +00:00
/// <summary>
/// Deletes the job.
/// </summary>
/// <param name="id">The identifier.</param>
/// <returns>Task.</returns>
Task DeleteJob(string id);
2014-07-26 17:30:15 +00:00
/// <summary>
/// Gets the jobs.
/// </summary>
/// <param name="query">The query.</param>
/// <returns>QueryResult&lt;SyncJob&gt;.</returns>
QueryResult<SyncJob> GetJobs(SyncJobQuery query);
/// <summary>
/// Gets the job item.
/// </summary>
/// <param name="id">The identifier.</param>
/// <returns>SyncJobItem.</returns>
SyncJobItem GetJobItem(string id);
/// <summary>
/// Creates the specified job item.
/// </summary>
/// <param name="jobItem">The job item.</param>
/// <returns>Task.</returns>
Task Create(SyncJobItem jobItem);
/// <summary>
/// Updates the specified job item.
/// </summary>
/// <param name="jobItem">The job item.</param>
/// <returns>Task.</returns>
Task Update(SyncJobItem jobItem);
2014-12-11 06:20:28 +00:00
/// <summary>
/// Gets the job items.
/// </summary>
/// <param name="jobId">The job identifier.</param>
/// <returns>IEnumerable&lt;SyncJobItem&gt;.</returns>
IEnumerable<SyncJobItem> GetJobItems(string jobId);
2014-07-26 17:30:15 +00:00
}
}