aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Net
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-03-08 15:48:30 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-03-08 15:48:30 -0400
commitccb2dda358a54810d940c0c7ddceb255a82ae947 (patch)
tree0a6a673390bb8f3e88fbe7f69e408f31c99d18ec /MediaBrowser.Controller/Net
parent55c47e50fc261849c277cb65654d91a8c5a8e308 (diff)
connect to socket with access token
Diffstat (limited to 'MediaBrowser.Controller/Net')
-rw-r--r--MediaBrowser.Controller/Net/IHttpServer.cs5
-rw-r--r--MediaBrowser.Controller/Net/IServerManager.cs7
-rw-r--r--MediaBrowser.Controller/Net/IWebSocketConnection.cs14
-rw-r--r--MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs42
4 files changed, 66 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/Net/IHttpServer.cs b/MediaBrowser.Controller/Net/IHttpServer.cs
index 315b48b83..37142af19 100644
--- a/MediaBrowser.Controller/Net/IHttpServer.cs
+++ b/MediaBrowser.Controller/Net/IHttpServer.cs
@@ -45,6 +45,11 @@ namespace MediaBrowser.Controller.Net
event EventHandler<WebSocketConnectEventArgs> WebSocketConnected;
/// <summary>
+ /// Occurs when [web socket connecting].
+ /// </summary>
+ event EventHandler<WebSocketConnectingEventArgs> WebSocketConnecting;
+
+ /// <summary>
/// Inits this instance.
/// </summary>
void Init(IEnumerable<IRestfulService> services);
diff --git a/MediaBrowser.Controller/Net/IServerManager.cs b/MediaBrowser.Controller/Net/IServerManager.cs
index d90a0f8ed..5191a62e3 100644
--- a/MediaBrowser.Controller/Net/IServerManager.cs
+++ b/MediaBrowser.Controller/Net/IServerManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Net;
+using MediaBrowser.Model.Events;
using System;
using System.Collections.Generic;
using System.Threading;
@@ -58,5 +58,10 @@ namespace MediaBrowser.Controller.Net
/// </summary>
/// <value>The web socket connections.</value>
IEnumerable<IWebSocketConnection> WebSocketConnections { get; }
+
+ /// <summary>
+ /// Occurs when [web socket connected].
+ /// </summary>
+ event EventHandler<GenericEventArgs<IWebSocketConnection>> WebSocketConnected;
}
} \ No newline at end of file
diff --git a/MediaBrowser.Controller/Net/IWebSocketConnection.cs b/MediaBrowser.Controller/Net/IWebSocketConnection.cs
index 37fd6708d..e21df3c39 100644
--- a/MediaBrowser.Controller/Net/IWebSocketConnection.cs
+++ b/MediaBrowser.Controller/Net/IWebSocketConnection.cs
@@ -1,5 +1,6 @@
using MediaBrowser.Model.Net;
using System;
+using System.Collections.Specialized;
using System.Threading;
using System.Threading.Tasks;
@@ -11,7 +12,7 @@ namespace MediaBrowser.Controller.Net
/// Occurs when [closed].
/// </summary>
event EventHandler<EventArgs> Closed;
-
+
/// <summary>
/// Gets the id.
/// </summary>
@@ -25,6 +26,17 @@ namespace MediaBrowser.Controller.Net
DateTime LastActivityDate { get; }
/// <summary>
+ /// Gets or sets the URL.
+ /// </summary>
+ /// <value>The URL.</value>
+ string Url { get; set; }
+ /// <summary>
+ /// Gets or sets the query string.
+ /// </summary>
+ /// <value>The query string.</value>
+ NameValueCollection QueryString { get; set; }
+
+ /// <summary>
/// Gets or sets the receive action.
/// </summary>
/// <value>The receive action.</value>
diff --git a/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs b/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs
index 394fcd92f..ffeaf286e 100644
--- a/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs
+++ b/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs
@@ -1,4 +1,5 @@
using System;
+using System.Collections.Specialized;
namespace MediaBrowser.Controller.Net
{
@@ -8,6 +9,16 @@ namespace MediaBrowser.Controller.Net
public class WebSocketConnectEventArgs : EventArgs
{
/// <summary>
+ /// Gets or sets the URL.
+ /// </summary>
+ /// <value>The URL.</value>
+ public string Url { get; set; }
+ /// <summary>
+ /// Gets or sets the query string.
+ /// </summary>
+ /// <value>The query string.</value>
+ public NameValueCollection QueryString { get; set; }
+ /// <summary>
/// Gets or sets the web socket.
/// </summary>
/// <value>The web socket.</value>
@@ -18,4 +29,35 @@ namespace MediaBrowser.Controller.Net
/// <value>The endpoint.</value>
public string Endpoint { get; set; }
}
+
+ public class WebSocketConnectingEventArgs : EventArgs
+ {
+ /// <summary>
+ /// Gets or sets the URL.
+ /// </summary>
+ /// <value>The URL.</value>
+ public string Url { get; set; }
+ /// <summary>
+ /// Gets or sets the endpoint.
+ /// </summary>
+ /// <value>The endpoint.</value>
+ public string Endpoint { get; set; }
+ /// <summary>
+ /// Gets or sets the query string.
+ /// </summary>
+ /// <value>The query string.</value>
+ public NameValueCollection QueryString { get; set; }
+ /// <summary>
+ /// Gets or sets a value indicating whether [allow connection].
+ /// </summary>
+ /// <value><c>true</c> if [allow connection]; otherwise, <c>false</c>.</value>
+ public bool AllowConnection { get; set; }
+
+ public WebSocketConnectingEventArgs()
+ {
+ QueryString = new NameValueCollection();
+ AllowConnection = true;
+ }
+ }
+
}