diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-11-25 23:12:29 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-11-25 23:12:29 -0500 |
| commit | 576768de594a56512693715d5748973984fe5f97 (patch) | |
| tree | b3408749af54217a931e1635adc88a3b2a015ec5 /MediaBrowser.Controller/Net/IServerManager.cs | |
| parent | 561b6302104d5f722f90ba7244375f217b17a18d (diff) | |
update translations
Diffstat (limited to 'MediaBrowser.Controller/Net/IServerManager.cs')
| -rw-r--r-- | MediaBrowser.Controller/Net/IServerManager.cs | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Net/IServerManager.cs b/MediaBrowser.Controller/Net/IServerManager.cs new file mode 100644 index 000000000..dff086347 --- /dev/null +++ b/MediaBrowser.Controller/Net/IServerManager.cs @@ -0,0 +1,60 @@ +using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Net +{ + /// <summary> + /// Interface IServerManager + /// </summary> + public interface IServerManager : IDisposable + { + /// <summary> + /// Starts this instance. + /// </summary> + /// <param name="urlPrefixes">The URL prefixes.</param> + void Start(IEnumerable<string> urlPrefixes); + + /// <summary> + /// Sends a message to all clients currently connected via a web socket + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="messageType">Type of the message.</param> + /// <param name="data">The data.</param> + /// <returns>Task.</returns> + void SendWebSocketMessage<T>(string messageType, T data); + + /// <summary> + /// Sends a message to all clients currently connected via a web socket + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="messageType">Type of the message.</param> + /// <param name="dataFunction">The function that generates the data to send, if there are any connected clients</param> + void SendWebSocketMessage<T>(string messageType, Func<T> dataFunction); + + /// <summary> + /// Sends a message to all clients currently connected via a web socket + /// </summary> + /// <typeparam name="T"></typeparam> + /// <param name="messageType">Type of the message.</param> + /// <param name="dataFunction">The function that generates the data to send, if there are any connected clients</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>Task.</returns> + /// <exception cref="System.ArgumentNullException">messageType</exception> + Task SendWebSocketMessageAsync<T>(string messageType, Func<T> dataFunction, CancellationToken cancellationToken); + + /// <summary> + /// Adds the web socket listeners. + /// </summary> + /// <param name="listeners">The listeners.</param> + void AddWebSocketListeners(IEnumerable<IWebSocketListener> listeners); + + /// <summary> + /// Gets the web socket connections. + /// </summary> + /// <value>The web socket connections.</value> + IEnumerable<IWebSocketConnection> WebSocketConnections { get; } + } +}
\ No newline at end of file |
