diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-07-15 00:12:26 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-07-15 00:12:26 -0400 |
| commit | 6375411f53a2b561d04f167b4a162892a8671ef4 (patch) | |
| tree | a000ae575ed1c377390a69d770c0e2f843fdfb7a | |
| parent | 98012480f70cdfa918bbea1ae975d6f7cb8c7f67 (diff) | |
added sync model objects
| -rw-r--r-- | MediaBrowser.Controller/MediaBrowser.Controller.csproj | 1 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Sync/ISyncManager.cs | 50 | ||||
| -rw-r--r-- | MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj | 24 | ||||
| -rw-r--r-- | MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj | 24 | ||||
| -rw-r--r-- | MediaBrowser.Model/MediaBrowser.Model.csproj | 8 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncJob.cs | 47 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncJobQuery.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncJobRequest.cs | 28 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncJobStatus.cs | 35 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncQuality.cs | 21 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncSchedule.cs | 12 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncScheduleQuery.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncScheduleRequest.cs | 23 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Manager/MetadataService.cs | 1 |
14 files changed, 287 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 1c60ea8e6..fb50deb66 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -319,6 +319,7 @@ <Compile Include="Sorting\SortExtensions.cs" /> <Compile Include="Subtitles\SubtitleResponse.cs" /> <Compile Include="Subtitles\SubtitleSearchRequest.cs" /> + <Compile Include="Sync\ISyncManager.cs" /> <Compile Include="Themes\IAppThemeManager.cs" /> <Compile Include="Themes\InternalThemeImage.cs" /> </ItemGroup> diff --git a/MediaBrowser.Controller/Sync/ISyncManager.cs b/MediaBrowser.Controller/Sync/ISyncManager.cs new file mode 100644 index 000000000..fc92718ca --- /dev/null +++ b/MediaBrowser.Controller/Sync/ISyncManager.cs @@ -0,0 +1,50 @@ +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Sync; +using System.Collections.Generic; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Sync +{ + public interface ISyncManager + { + /// <summary> + /// Creates the job. + /// </summary> + /// <param name="request">The request.</param> + /// <returns>Task.</returns> + Task<List<SyncJob>> CreateJob(SyncJobRequest request); + + /// <summary> + /// Creates the schedule. + /// </summary> + /// <param name="request">The request.</param> + /// <returns>Task.</returns> + Task<SyncSchedule> CreateSchedule(SyncScheduleRequest request); + + /// <summary> + /// Gets the jobs. + /// </summary> + /// <returns>QueryResult<SyncJob>.</returns> + QueryResult<SyncJob> GetJobs(SyncJobQuery query); + + /// <summary> + /// Gets the schedules. + /// </summary> + /// <returns>QueryResult<SyncSchedule>.</returns> + QueryResult<SyncSchedule> GetSchedules(SyncScheduleQuery query); + + /// <summary> + /// Cancels the job. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>Task.</returns> + Task CancelJob(string id); + + /// <summary> + /// Cancels the schedule. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>Task.</returns> + Task CancelSchedule(string id); + } +} diff --git a/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj b/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj index baa9f933d..9a5cf81f5 100644 --- a/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj +++ b/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj @@ -842,6 +842,30 @@ <Compile Include="..\MediaBrowser.Model\Session\UserDataChangeInfo.cs"> <Link>Session\UserDataChangeInfo.cs</Link> </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJob.cs"> + <Link>Sync\SyncJob.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJobQuery.cs"> + <Link>Sync\SyncJobQuery.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJobRequest.cs"> + <Link>Sync\SyncJobRequest.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJobStatus.cs"> + <Link>Sync\SyncJobStatus.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncQuality.cs"> + <Link>Sync\SyncQuality.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncSchedule.cs"> + <Link>Sync\SyncSchedule.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncScheduleQuery.cs"> + <Link>Sync\SyncScheduleQuery.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncScheduleRequest.cs"> + <Link>Sync\SyncScheduleRequest.cs</Link> + </Compile> <Compile Include="..\MediaBrowser.Model\System\LogFile.cs"> <Link>System\LogFile.cs</Link> </Compile> diff --git a/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj b/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj index 782e8524d..d96717429 100644 --- a/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj +++ b/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj @@ -799,6 +799,30 @@ <Compile Include="..\MediaBrowser.Model\Session\UserDataChangeInfo.cs"> <Link>Session\UserDataChangeInfo.cs</Link> </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJob.cs"> + <Link>Sync\SyncJob.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJobQuery.cs"> + <Link>Sync\SyncJobQuery.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJobRequest.cs"> + <Link>Sync\SyncJobRequest.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncJobStatus.cs"> + <Link>Sync\SyncJobStatus.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncQuality.cs"> + <Link>Sync\SyncQuality.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncSchedule.cs"> + <Link>Sync\SyncSchedule.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncScheduleQuery.cs"> + <Link>Sync\SyncScheduleQuery.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncScheduleRequest.cs"> + <Link>Sync\SyncScheduleRequest.cs</Link> + </Compile> <Compile Include="..\MediaBrowser.Model\System\LogFile.cs"> <Link>System\LogFile.cs</Link> </Compile> diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj index 4d4ca8e20..d82e64aa3 100644 --- a/MediaBrowser.Model/MediaBrowser.Model.csproj +++ b/MediaBrowser.Model/MediaBrowser.Model.csproj @@ -295,6 +295,14 @@ <Compile Include="Session\SessionInfoDto.cs" /> <Compile Include="Session\SessionUserInfo.cs" /> <Compile Include="Session\UserDataChangeInfo.cs" /> + <Compile Include="Sync\SyncJob.cs" /> + <Compile Include="Sync\SyncJobQuery.cs" /> + <Compile Include="Sync\SyncJobRequest.cs" /> + <Compile Include="Sync\SyncJobStatus.cs" /> + <Compile Include="Sync\SyncQuality.cs" /> + <Compile Include="Sync\SyncSchedule.cs" /> + <Compile Include="Sync\SyncScheduleQuery.cs" /> + <Compile Include="Sync\SyncScheduleRequest.cs" /> <Compile Include="System\LogFile.cs" /> <Compile Include="Themes\AppTheme.cs" /> <Compile Include="Themes\AppThemeInfo.cs" /> diff --git a/MediaBrowser.Model/Sync/SyncJob.cs b/MediaBrowser.Model/Sync/SyncJob.cs new file mode 100644 index 000000000..09049a196 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncJob.cs @@ -0,0 +1,47 @@ + +namespace MediaBrowser.Model.Sync +{ + public class SyncJob + { + /// <summary> + /// Gets or sets the identifier. + /// </summary> + /// <value>The identifier.</value> + public string Id { get; set; } + /// <summary> + /// Gets or sets the device identifier. + /// </summary> + /// <value>The device identifier.</value> + public string DeviceId { get; set; } + /// <summary> + /// Gets or sets the item identifier. + /// </summary> + /// <value>The item identifier.</value> + public string ItemId { get; set; } + /// <summary> + /// Gets or sets the quality. + /// </summary> + /// <value>The quality.</value> + public SyncQuality Quality { get; set; } + /// <summary> + /// Gets or sets the status. + /// </summary> + /// <value>The status.</value> + public SyncJobStatus Status { get; set; } + /// <summary> + /// Gets or sets the current progress. + /// </summary> + /// <value>The current progress.</value> + public double? CurrentProgress { get; set; } + /// <summary> + /// Gets or sets the synchronize rule identifier. + /// </summary> + /// <value>The synchronize rule identifier.</value> + public string SyncScheduleId { get; set; } + /// <summary> + /// Gets or sets the transcoded path. + /// </summary> + /// <value>The transcoded path.</value> + public string TranscodedPath { get; set; } + } +} diff --git a/MediaBrowser.Model/Sync/SyncJobQuery.cs b/MediaBrowser.Model/Sync/SyncJobQuery.cs new file mode 100644 index 000000000..f41544db9 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncJobQuery.cs @@ -0,0 +1,7 @@ + +namespace MediaBrowser.Model.Sync +{ + public class SyncJobQuery + { + } +} diff --git a/MediaBrowser.Model/Sync/SyncJobRequest.cs b/MediaBrowser.Model/Sync/SyncJobRequest.cs new file mode 100644 index 000000000..9871f976d --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncJobRequest.cs @@ -0,0 +1,28 @@ +using System.Collections.Generic; + +namespace MediaBrowser.Model.Sync +{ + public class SyncJobRequest + { + /// <summary> + /// Gets or sets the device identifier. + /// </summary> + /// <value>The device identifier.</value> + public List<string> DeviceIds { get; set; } + /// <summary> + /// Gets or sets the item identifier. + /// </summary> + /// <value>The item identifier.</value> + public string ItemId { get; set; } + /// <summary> + /// Gets or sets the quality. + /// </summary> + /// <value>The quality.</value> + public SyncQuality Quality { get; set; } + + public SyncJobRequest() + { + DeviceIds = new List<string>(); + } + } +} diff --git a/MediaBrowser.Model/Sync/SyncJobStatus.cs b/MediaBrowser.Model/Sync/SyncJobStatus.cs new file mode 100644 index 000000000..2a216fe04 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncJobStatus.cs @@ -0,0 +1,35 @@ + +namespace MediaBrowser.Model.Sync +{ + public enum SyncJobStatus + { + /// <summary> + /// The queued + /// </summary> + Queued = 0, + /// <summary> + /// The transcoding + /// </summary> + Transcoding = 1, + /// <summary> + /// The transcoding failed + /// </summary> + TranscodingFailed = 2, + /// <summary> + /// The transcoding completed + /// </summary> + TranscodingCompleted = 3, + /// <summary> + /// The transfering + /// </summary> + Transfering = 4, + /// <summary> + /// The transfer failed + /// </summary> + TransferFailed = 4, + /// <summary> + /// The completed + /// </summary> + Completed = 6 + } +} diff --git a/MediaBrowser.Model/Sync/SyncQuality.cs b/MediaBrowser.Model/Sync/SyncQuality.cs new file mode 100644 index 000000000..f915e2768 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncQuality.cs @@ -0,0 +1,21 @@ + +namespace MediaBrowser.Model.Sync +{ + public enum SyncQuality + { + /// <summary> + /// The good + /// </summary> + Good = 0, + + /// <summary> + /// The better + /// </summary> + Better = 1, + + /// <summary> + /// The best + /// </summary> + Best = 2 + } +} diff --git a/MediaBrowser.Model/Sync/SyncSchedule.cs b/MediaBrowser.Model/Sync/SyncSchedule.cs new file mode 100644 index 000000000..297cbd145 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncSchedule.cs @@ -0,0 +1,12 @@ + +namespace MediaBrowser.Model.Sync +{ + public class SyncSchedule + { + /// <summary> + /// Gets or sets the identifier. + /// </summary> + /// <value>The identifier.</value> + public string Id { get; set; } + } +} diff --git a/MediaBrowser.Model/Sync/SyncScheduleQuery.cs b/MediaBrowser.Model/Sync/SyncScheduleQuery.cs new file mode 100644 index 000000000..b704a358c --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncScheduleQuery.cs @@ -0,0 +1,7 @@ + +namespace MediaBrowser.Model.Sync +{ + public class SyncScheduleQuery + { + } +} diff --git a/MediaBrowser.Model/Sync/SyncScheduleRequest.cs b/MediaBrowser.Model/Sync/SyncScheduleRequest.cs new file mode 100644 index 000000000..e1ba4b115 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncScheduleRequest.cs @@ -0,0 +1,23 @@ +using System.Collections.Generic; + +namespace MediaBrowser.Model.Sync +{ + public class SyncScheduleRequest + { + /// <summary> + /// Gets or sets the device identifier. + /// </summary> + /// <value>The device identifier.</value> + public List<string> DeviceIds { get; set; } + /// <summary> + /// Gets or sets the quality. + /// </summary> + /// <value>The quality.</value> + public SyncQuality Quality { get; set; } + + public SyncScheduleRequest() + { + DeviceIds = new List<string>(); + } + } +} diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index 335fb9769..b84d060d7 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -339,7 +339,6 @@ namespace MediaBrowser.Providers.Manager break; } - failedProviderCount++; Logger.Debug("{0} returned no metadata for {1}", providerName, item.Path ?? item.Name); } catch (OperationCanceledException) |
