aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Session
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Session')
-rw-r--r--MediaBrowser.Controller/Session/ISessionControllerFactory.cs16
-rw-r--r--MediaBrowser.Controller/Session/ISessionManager.cs9
-rw-r--r--MediaBrowser.Controller/Session/SessionInfo.cs6
3 files changed, 30 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Session/ISessionControllerFactory.cs b/MediaBrowser.Controller/Session/ISessionControllerFactory.cs
new file mode 100644
index 000000000..92862e462
--- /dev/null
+++ b/MediaBrowser.Controller/Session/ISessionControllerFactory.cs
@@ -0,0 +1,16 @@
+
+namespace MediaBrowser.Controller.Session
+{
+ /// <summary>
+ /// Interface ISesssionControllerFactory
+ /// </summary>
+ public interface ISessionControllerFactory
+ {
+ /// <summary>
+ /// Gets the session controller.
+ /// </summary>
+ /// <param name="session">The session.</param>
+ /// <returns>ISessionController.</returns>
+ ISessionController GetSessionController(SessionInfo session);
+ }
+}
diff --git a/MediaBrowser.Controller/Session/ISessionManager.cs b/MediaBrowser.Controller/Session/ISessionManager.cs
index 771d8f72e..ec138bfb4 100644
--- a/MediaBrowser.Controller/Session/ISessionManager.cs
+++ b/MediaBrowser.Controller/Session/ISessionManager.cs
@@ -35,16 +35,23 @@ namespace MediaBrowser.Controller.Session
IEnumerable<SessionInfo> Sessions { get; }
/// <summary>
+ /// Adds the parts.
+ /// </summary>
+ /// <param name="sessionFactories">The session factories.</param>
+ void AddParts(IEnumerable<ISessionControllerFactory> sessionFactories);
+
+ /// <summary>
/// Logs the user activity.
/// </summary>
/// <param name="clientType">Type of the client.</param>
/// <param name="appVersion">The app version.</param>
/// <param name="deviceId">The device id.</param>
/// <param name="deviceName">Name of the device.</param>
+ /// <param name="remoteEndPoint">The remote end point.</param>
/// <param name="user">The user.</param>
/// <returns>Task.</returns>
/// <exception cref="System.ArgumentNullException">user</exception>
- Task<SessionInfo> LogSessionActivity(string clientType, string appVersion, string deviceId, string deviceName, User user);
+ Task<SessionInfo> LogSessionActivity(string clientType, string appVersion, string deviceId, string deviceName, string remoteEndPoint, User user);
/// <summary>
/// Used to report that playback has started for an item
diff --git a/MediaBrowser.Controller/Session/SessionInfo.cs b/MediaBrowser.Controller/Session/SessionInfo.cs
index ed2fcda67..82e9328ac 100644
--- a/MediaBrowser.Controller/Session/SessionInfo.cs
+++ b/MediaBrowser.Controller/Session/SessionInfo.cs
@@ -15,6 +15,12 @@ namespace MediaBrowser.Controller.Session
}
/// <summary>
+ /// Gets or sets the remote end point.
+ /// </summary>
+ /// <value>The remote end point.</value>
+ public string RemoteEndPoint { get; set; }
+
+ /// <summary>
/// Gets or sets a value indicating whether this instance can seek.
/// </summary>
/// <value><c>true</c> if this instance can seek; otherwise, <c>false</c>.</value>