diff options
| -rw-r--r-- | MediaBrowser.Api/Sync/SyncService.cs | 12 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Sync/ISyncManager.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj | 6 | ||||
| -rw-r--r-- | MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj | 6 | ||||
| -rw-r--r-- | MediaBrowser.Model/ApiClient/IApiClient.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.Model/MediaBrowser.Model.csproj | 2 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/DeviceFileInfo.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/ItemFIleInfo.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/LocalItem.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncDataRequest.cs | 16 | ||||
| -rw-r--r-- | MediaBrowser.Model/Sync/SyncDataResponse.cs | 14 | ||||
| -rw-r--r-- | MediaBrowser.Server.Implementations/Sync/SyncManager.cs | 7 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Common.Internal.nuspec | 4 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Common.nuspec | 2 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Model.Signed.nuspec | 2 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Server.Core.nuspec | 4 |
16 files changed, 86 insertions, 9 deletions
diff --git a/MediaBrowser.Api/Sync/SyncService.cs b/MediaBrowser.Api/Sync/SyncService.cs index 0036b316ff..31442c1d94 100644 --- a/MediaBrowser.Api/Sync/SyncService.cs +++ b/MediaBrowser.Api/Sync/SyncService.cs @@ -92,6 +92,11 @@ namespace MediaBrowser.Api.Sync public string TargetId { get; set; } } + [Route("/Sync/Data", "POST", Summary = "Syncs data between device and server")] + public class SyncData : SyncDataRequest, IReturn<SyncDataResponse> + { + } + [Authenticated] public class SyncService : BaseApiService { @@ -219,5 +224,12 @@ namespace MediaBrowser.Api.Sync { return ToOptimizedResult(_syncManager.GetReadySyncItems(request.TargetId)); } + + public async Task<object> Post(SyncData request) + { + var response = await _syncManager.SyncData(request).ConfigureAwait(false); + + return ToOptimizedResult(response); + } } } diff --git a/MediaBrowser.Controller/Sync/ISyncManager.cs b/MediaBrowser.Controller/Sync/ISyncManager.cs index 39cec4f00f..6cad197369 100644 --- a/MediaBrowser.Controller/Sync/ISyncManager.cs +++ b/MediaBrowser.Controller/Sync/ISyncManager.cs @@ -95,5 +95,12 @@ namespace MediaBrowser.Controller.Sync /// <param name="targetId">The target identifier.</param> /// <returns>List<SyncedItem>.</returns> List<SyncedItem> GetReadySyncItems(string targetId); + + /// <summary> + /// Synchronizes the data. + /// </summary> + /// <param name="request">The request.</param> + /// <returns>Task<SyncDataResponse>.</returns> + Task<SyncDataResponse> SyncData(SyncDataRequest request); } } diff --git a/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj b/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj index f4d92b6f3b..e4cfab571f 100644 --- a/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj +++ b/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj @@ -1055,6 +1055,12 @@ <Compile Include="..\MediaBrowser.Model\Sync\SyncCategory.cs"> <Link>Sync\SyncCategory.cs</Link> </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncDataRequest.cs"> + <Link>Sync\SyncDataRequest.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncDataResponse.cs"> + <Link>Sync\SyncDataResponse.cs</Link> + </Compile> <Compile Include="..\MediaBrowser.Model\Sync\SyncDialogOptions.cs"> <Link>Sync\SyncDialogOptions.cs</Link> </Compile> diff --git a/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj b/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj index b07e8557fb..3fc5201a7b 100644 --- a/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj +++ b/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj @@ -1014,6 +1014,12 @@ <Compile Include="..\MediaBrowser.Model\Sync\SyncCategory.cs"> <Link>Sync\SyncCategory.cs</Link> </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncDataRequest.cs"> + <Link>Sync\SyncDataRequest.cs</Link> + </Compile> + <Compile Include="..\MediaBrowser.Model\Sync\SyncDataResponse.cs"> + <Link>Sync\SyncDataResponse.cs</Link> + </Compile> <Compile Include="..\MediaBrowser.Model\Sync\SyncDialogOptions.cs"> <Link>Sync\SyncDialogOptions.cs</Link> </Compile> diff --git a/MediaBrowser.Model/ApiClient/IApiClient.cs b/MediaBrowser.Model/ApiClient/IApiClient.cs index 883e54308d..9faa8fceda 100644 --- a/MediaBrowser.Model/ApiClient/IApiClient.cs +++ b/MediaBrowser.Model/ApiClient/IApiClient.cs @@ -1433,5 +1433,12 @@ namespace MediaBrowser.Model.ApiClient /// <param name="targetId">The target identifier.</param> /// <returns>List<SyncedItem>.</returns> Task<List<SyncedItem>> GetReadySyncItems(string targetId); + + /// <summary> + /// Synchronizes the data. + /// </summary> + /// <param name="request">The request.</param> + /// <returns>Task<SyncDataResponse>.</returns> + Task<SyncDataResponse> SyncData(SyncDataRequest request); } }
\ No newline at end of file diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj index 8ec271626d..d5280f4b11 100644 --- a/MediaBrowser.Model/MediaBrowser.Model.csproj +++ b/MediaBrowser.Model/MediaBrowser.Model.csproj @@ -372,6 +372,8 @@ <Compile Include="Sync\ItemFileType.cs" /> <Compile Include="Sync\LocalItem.cs" /> <Compile Include="Sync\SyncCategory.cs" /> + <Compile Include="Sync\SyncDataRequest.cs" /> + <Compile Include="Sync\SyncDataResponse.cs" /> <Compile Include="Sync\SyncDialogOptions.cs" /> <Compile Include="Sync\SyncedItem.cs" /> <Compile Include="Sync\SyncHelper.cs" /> diff --git a/MediaBrowser.Model/Sync/DeviceFileInfo.cs b/MediaBrowser.Model/Sync/DeviceFileInfo.cs index bb9a0c6ef2..bc93b69bcf 100644 --- a/MediaBrowser.Model/Sync/DeviceFileInfo.cs +++ b/MediaBrowser.Model/Sync/DeviceFileInfo.cs @@ -3,7 +3,7 @@ namespace MediaBrowser.Model.Sync { public class DeviceFileInfo { - public string[] Path { get; set; } + public string Path { get; set; } public string Name { get; set; } } } diff --git a/MediaBrowser.Model/Sync/ItemFIleInfo.cs b/MediaBrowser.Model/Sync/ItemFIleInfo.cs index f0829bc2bf..b110af6b5a 100644 --- a/MediaBrowser.Model/Sync/ItemFIleInfo.cs +++ b/MediaBrowser.Model/Sync/ItemFIleInfo.cs @@ -18,7 +18,7 @@ namespace MediaBrowser.Model.Sync /// Gets or sets the path. /// </summary> /// <value>The path.</value> - public string[] Path { get; set; } + public string Path { get; set; } /// <summary> /// Gets or sets the type of the image. /// </summary> diff --git a/MediaBrowser.Model/Sync/LocalItem.cs b/MediaBrowser.Model/Sync/LocalItem.cs index 9e660c5909..51faaff904 100644 --- a/MediaBrowser.Model/Sync/LocalItem.cs +++ b/MediaBrowser.Model/Sync/LocalItem.cs @@ -13,7 +13,7 @@ namespace MediaBrowser.Model.Sync /// Gets or sets the local path. /// </summary> /// <value>The local path.</value> - public string[] LocalPath { get; set; } + public string LocalPath { get; set; } /// <summary> /// Gets or sets the server identifier. /// </summary> diff --git a/MediaBrowser.Model/Sync/SyncDataRequest.cs b/MediaBrowser.Model/Sync/SyncDataRequest.cs new file mode 100644 index 0000000000..3eb447b3f2 --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncDataRequest.cs @@ -0,0 +1,16 @@ +using System.Collections.Generic; + +namespace MediaBrowser.Model.Sync +{ + public class SyncDataRequest + { + public List<string> LocalItemIds { get; set; } + + public string TargetId { get; set; } + + public SyncDataRequest() + { + LocalItemIds = new List<string>(); + } + } +} diff --git a/MediaBrowser.Model/Sync/SyncDataResponse.cs b/MediaBrowser.Model/Sync/SyncDataResponse.cs new file mode 100644 index 0000000000..ac7ff5c84a --- /dev/null +++ b/MediaBrowser.Model/Sync/SyncDataResponse.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; + +namespace MediaBrowser.Model.Sync +{ + public class SyncDataResponse + { + public List<string> ItemIdsToRemove { get; set; } + + public SyncDataResponse() + { + ItemIdsToRemove = new List<string>(); + } + } +} diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs index 24b9b0b83c..3f30dcb1ce 100644 --- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs +++ b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs @@ -388,5 +388,12 @@ namespace MediaBrowser.Server.Implementations.Sync return jobItemResult.Items.Select(GetJobItemInfo) .ToList(); } + + public async Task<SyncDataResponse> SyncData(SyncDataRequest request) + { + var response = new SyncDataResponse(); + + return response; + } } } diff --git a/Nuget/MediaBrowser.Common.Internal.nuspec b/Nuget/MediaBrowser.Common.Internal.nuspec index f637622ef9..c4588f825d 100644 --- a/Nuget/MediaBrowser.Common.Internal.nuspec +++ b/Nuget/MediaBrowser.Common.Internal.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"> <metadata> <id>MediaBrowser.Common.Internal</id> - <version>3.0.534</version> + <version>3.0.537</version> <title>MediaBrowser.Common.Internal</title> <authors>Luke</authors> <owners>ebr,Luke,scottisafool</owners> @@ -12,7 +12,7 @@ <description>Contains common components shared by Media Browser Theater and Media Browser Server. Not intended for plugin developer consumption.</description> <copyright>Copyright © Media Browser 2013</copyright> <dependencies> - <dependency id="MediaBrowser.Common" version="3.0.534" /> + <dependency id="MediaBrowser.Common" version="3.0.537" /> <dependency id="NLog" version="3.1.0.0" /> <dependency id="SimpleInjector" version="2.6.1" /> <dependency id="sharpcompress" version="0.10.2" /> diff --git a/Nuget/MediaBrowser.Common.nuspec b/Nuget/MediaBrowser.Common.nuspec index eddbcd0d20..125dd6d289 100644 --- a/Nuget/MediaBrowser.Common.nuspec +++ b/Nuget/MediaBrowser.Common.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"> <metadata> <id>MediaBrowser.Common</id> - <version>3.0.534</version> + <version>3.0.537</version> <title>MediaBrowser.Common</title> <authors>Media Browser Team</authors> <owners>ebr,Luke,scottisafool</owners> diff --git a/Nuget/MediaBrowser.Model.Signed.nuspec b/Nuget/MediaBrowser.Model.Signed.nuspec index 7e10950b07..1a7d948c5a 100644 --- a/Nuget/MediaBrowser.Model.Signed.nuspec +++ b/Nuget/MediaBrowser.Model.Signed.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"> <metadata> <id>MediaBrowser.Model.Signed</id> - <version>3.0.534</version> + <version>3.0.537</version> <title>MediaBrowser.Model - Signed Edition</title> <authors>Media Browser Team</authors> <owners>ebr,Luke,scottisafool</owners> diff --git a/Nuget/MediaBrowser.Server.Core.nuspec b/Nuget/MediaBrowser.Server.Core.nuspec index 7fde54fe41..b63ff3ca11 100644 --- a/Nuget/MediaBrowser.Server.Core.nuspec +++ b/Nuget/MediaBrowser.Server.Core.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> <metadata> <id>MediaBrowser.Server.Core</id> - <version>3.0.534</version> + <version>3.0.537</version> <title>Media Browser.Server.Core</title> <authors>Media Browser Team</authors> <owners>ebr,Luke,scottisafool</owners> @@ -12,7 +12,7 @@ <description>Contains core components required to build plugins for Media Browser Server.</description> <copyright>Copyright © Media Browser 2013</copyright> <dependencies> - <dependency id="MediaBrowser.Common" version="3.0.534" /> + <dependency id="MediaBrowser.Common" version="3.0.537" /> </dependencies> </metadata> <files> |
