aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Sync/ISyncRepository.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Sync/ISyncRepository.cs')
-rw-r--r--MediaBrowser.Controller/Sync/ISyncRepository.cs58
1 files changed, 58 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Sync/ISyncRepository.cs b/MediaBrowser.Controller/Sync/ISyncRepository.cs
new file mode 100644
index 000000000..9cce69bdc
--- /dev/null
+++ b/MediaBrowser.Controller/Sync/ISyncRepository.cs
@@ -0,0 +1,58 @@
+using MediaBrowser.Model.Querying;
+using MediaBrowser.Model.Sync;
+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);
+
+ /// <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);
+ }
+}