diff options
Diffstat (limited to 'MediaBrowser.Controller')
5 files changed, 143 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/Devices/IDeviceManager.cs b/MediaBrowser.Controller/Devices/IDeviceManager.cs new file mode 100644 index 0000000000..b82c39effc --- /dev/null +++ b/MediaBrowser.Controller/Devices/IDeviceManager.cs @@ -0,0 +1,71 @@ +using MediaBrowser.Model.Devices; +using MediaBrowser.Model.Session; +using System.Collections.Generic; +using System.IO; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Devices +{ + public interface IDeviceManager + { + /// <summary> + /// Registers the device. + /// </summary> + /// <param name="reportedId">The reported identifier.</param> + /// <param name="name">The name.</param> + /// <param name="usedByUserId">The used by user identifier.</param> + /// <returns>Task.</returns> + Task RegisterDevice(string reportedId, string name, string usedByUserId); + + /// <summary> + /// Saves the capabilities. + /// </summary> + /// <param name="reportedId">The reported identifier.</param> + /// <param name="capabilities">The capabilities.</param> + /// <returns>Task.</returns> + Task SaveCapabilities(string reportedId, ClientCapabilities capabilities); + + /// <summary> + /// Gets the capabilities. + /// </summary> + /// <param name="reportedId">The reported identifier.</param> + /// <returns>ClientCapabilities.</returns> + ClientCapabilities GetCapabilities(string reportedId); + + /// <summary> + /// Gets the device information. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>DeviceInfo.</returns> + DeviceInfo GetDevice(string id); + + /// <summary> + /// Gets the devices. + /// </summary> + /// <returns>IEnumerable<DeviceInfo>.</returns> + IEnumerable<DeviceInfo> GetDevices(); + + /// <summary> + /// Deletes the device. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>Task.</returns> + Task DeleteDevice(string id); + + /// <summary> + /// Gets the upload history. + /// </summary> + /// <param name="deviceId">The device identifier.</param> + /// <returns>ContentUploadHistory.</returns> + ContentUploadHistory GetCameraUploadHistory(string deviceId); + + /// <summary> + /// Accepts the upload. + /// </summary> + /// <param name="deviceId">The device identifier.</param> + /// <param name="stream">The stream.</param> + /// <param name="file">The file.</param> + /// <returns>Task.</returns> + Task AcceptCameraUpload(string deviceId, Stream stream, LocalFileInfo file); + } +} diff --git a/MediaBrowser.Controller/Devices/IDeviceRepository.cs b/MediaBrowser.Controller/Devices/IDeviceRepository.cs new file mode 100644 index 0000000000..736504da30 --- /dev/null +++ b/MediaBrowser.Controller/Devices/IDeviceRepository.cs @@ -0,0 +1,66 @@ +using MediaBrowser.Model.Devices; +using MediaBrowser.Model.Session; +using System.Collections.Generic; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Devices +{ + public interface IDeviceRepository + { + /// <summary> + /// Registers the device. + /// </summary> + /// <param name="device">The device.</param> + /// <returns>Task.</returns> + Task SaveDevice(DeviceInfo device); + + /// <summary> + /// Saves the capabilities. + /// </summary> + /// <param name="id">The identifier.</param> + /// <param name="capabilities">The capabilities.</param> + /// <returns>Task.</returns> + Task SaveCapabilities(string id, ClientCapabilities capabilities); + + /// <summary> + /// Gets the capabilities. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>ClientCapabilities.</returns> + ClientCapabilities GetCapabilities(string id); + + /// <summary> + /// Gets the device information. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>DeviceInfo.</returns> + DeviceInfo GetDevice(string id); + + /// <summary> + /// Gets the devices. + /// </summary> + /// <returns>IEnumerable<DeviceInfo>.</returns> + IEnumerable<DeviceInfo> GetDevices(); + + /// <summary> + /// Deletes the device. + /// </summary> + /// <param name="id">The identifier.</param> + /// <returns>Task.</returns> + Task DeleteDevice(string id); + + /// <summary> + /// Gets the upload history. + /// </summary> + /// <param name="deviceId">The device identifier.</param> + /// <returns>ContentUploadHistory.</returns> + ContentUploadHistory GetCameraUploadHistory(string deviceId); + + /// <summary> + /// Saves the camera upload history. + /// </summary> + /// <param name="deviceId">The device identifier.</param> + /// <param name="file">The file.</param> + void AddCameraUpload(string deviceId, LocalFileInfo file); + } +} diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index d966d4df56..a49d00e875 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -102,6 +102,8 @@ <Compile Include="Connect\ConnectUser.cs" /> <Compile Include="Connect\IConnectManager.cs" /> <Compile Include="Connect\UserLinkResult.cs" /> + <Compile Include="Devices\IDeviceManager.cs" /> + <Compile Include="Devices\IDeviceRepository.cs" /> <Compile Include="Dlna\ControlRequest.cs" /> <Compile Include="Dlna\ControlResponse.cs" /> <Compile Include="Dlna\DlnaIconResponse.cs" /> diff --git a/MediaBrowser.Controller/Session/ISessionManager.cs b/MediaBrowser.Controller/Session/ISessionManager.cs index f715ce7703..c048e3fab7 100644 --- a/MediaBrowser.Controller/Session/ISessionManager.cs +++ b/MediaBrowser.Controller/Session/ISessionManager.cs @@ -232,7 +232,7 @@ namespace MediaBrowser.Controller.Session /// </summary> /// <param name="sessionId">The session identifier.</param> /// <param name="capabilities">The capabilities.</param> - void ReportCapabilities(string sessionId, SessionCapabilities capabilities); + void ReportCapabilities(string sessionId, ClientCapabilities capabilities); /// <summary> /// Reports the transcoding information. diff --git a/MediaBrowser.Controller/Sync/ISyncManager.cs b/MediaBrowser.Controller/Sync/ISyncManager.cs index 1d5ab7d3e7..1e744a0872 100644 --- a/MediaBrowser.Controller/Sync/ISyncManager.cs +++ b/MediaBrowser.Controller/Sync/ISyncManager.cs @@ -1,4 +1,6 @@ -using MediaBrowser.Controller.Entities; +using System.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Devices; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Sync; using System.Collections.Generic; |
