diff options
Diffstat (limited to 'MediaBrowser.Server.Implementations/Sync')
3 files changed, 74 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs b/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs new file mode 100644 index 000000000..6dec2b717 --- /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<SyncTarget> 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 000000000..ec3ac1239 --- /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<ICloudSyncProvider>().ToArray(); + } + + public IEnumerable<SyncTarget> 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 373b30a41..508fc188d 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<ISyncProvider> providers) + { + _providers = providers.ToArray(); + } + public Task<List<SyncJob>> CreateJob(SyncJobRequest request) { throw new NotImplementedException(); @@ -48,5 +56,10 @@ namespace MediaBrowser.Server.Implementations.Sync { throw new NotImplementedException(); } + + public IEnumerable<SyncTarget> GetSyncTargets() + { + return _providers.SelectMany(i => i.GetSyncTargets()); + } } } |
