From c524f3919ef019092d3bcfa246870bc3f16070c5 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Mon, 21 Jul 2014 21:29:06 -0400 Subject: added cloud sync model objects --- .../Sync/AppSyncProvider.cs | 26 ++++++++++++++++ .../Sync/CloudSyncProvider.cs | 35 ++++++++++++++++++++++ .../Sync/SyncManager.cs | 13 ++++++++ 3 files changed, 74 insertions(+) create mode 100644 MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs create mode 100644 MediaBrowser.Server.Implementations/Sync/CloudSyncProvider.cs (limited to 'MediaBrowser.Server.Implementations/Sync') diff --git a/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs b/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs new file mode 100644 index 0000000000..6dec2b7175 --- /dev/null +++ b/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs @@ -0,0 +1,26 @@ +using MediaBrowser.Controller.Sync; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Sync; +using System; +using System.Collections.Generic; + +namespace MediaBrowser.Server.Implementations.Sync +{ + public class AppSyncProvider : ISyncProvider + { + public IEnumerable GetSyncTargets() + { + throw new NotImplementedException(); + } + + public DeviceProfile GetDeviceProfile(SyncTarget target) + { + throw new NotImplementedException(); + } + + public string Name + { + get { return "App Sync"; } + } + } +} diff --git a/MediaBrowser.Server.Implementations/Sync/CloudSyncProvider.cs b/MediaBrowser.Server.Implementations/Sync/CloudSyncProvider.cs new file mode 100644 index 0000000000..ec3ac12397 --- /dev/null +++ b/MediaBrowser.Server.Implementations/Sync/CloudSyncProvider.cs @@ -0,0 +1,35 @@ +using MediaBrowser.Common; +using MediaBrowser.Controller.Sync; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Sync; +using System; +using System.Collections.Generic; +using System.Linq; + +namespace MediaBrowser.Server.Implementations.Sync +{ + public class CloudSyncProvider : ISyncProvider + { + private ICloudSyncProvider[] _providers = new ICloudSyncProvider[] {}; + + public CloudSyncProvider(IApplicationHost appHost) + { + _providers = appHost.GetExports().ToArray(); + } + + public IEnumerable GetSyncTargets() + { + throw new NotImplementedException(); + } + + public DeviceProfile GetDeviceProfile(SyncTarget target) + { + throw new NotImplementedException(); + } + + public string Name + { + get { return "Cloud Sync"; } + } + } +} diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs index 373b30a414..508fc188dd 100644 --- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs +++ b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs @@ -3,12 +3,20 @@ using MediaBrowser.Model.Querying; using MediaBrowser.Model.Sync; using System; using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; namespace MediaBrowser.Server.Implementations.Sync { public class SyncManager : ISyncManager { + private ISyncProvider[] _providers = new ISyncProvider[]{}; + + public void AddParts(IEnumerable providers) + { + _providers = providers.ToArray(); + } + public Task> CreateJob(SyncJobRequest request) { throw new NotImplementedException(); @@ -48,5 +56,10 @@ namespace MediaBrowser.Server.Implementations.Sync { throw new NotImplementedException(); } + + public IEnumerable GetSyncTargets() + { + return _providers.SelectMany(i => i.GetSyncTargets()); + } } } -- cgit v1.2.3