12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- using System;
- using System.IO;
- using System.Net.Security;
- using System.Security.Cryptography.X509Certificates;
- using System.Threading.Tasks;
- using Emby.Server.Implementations.HttpServer;
- using Emby.Server.Implementations.Net;
- using MediaBrowser.Common.Net;
- using MediaBrowser.Controller;
- using MediaBrowser.Controller.Configuration;
- using MediaBrowser.Controller.Net;
- using MediaBrowser.Model.Cryptography;
- using MediaBrowser.Model.IO;
- using MediaBrowser.Model.Logging;
- using MediaBrowser.Model.Net;
- using MediaBrowser.Model.Serialization;
- using MediaBrowser.Model.System;
- using MediaBrowser.Model.Text;
- using ServiceStack.Text.Jsv;
- using SocketHttpListener.Primitives;
- namespace Emby.Server.Implementations
- {
- /// <summary>
- /// Class ServerFactory
- /// </summary>
- public static class HttpServerFactory
- {
- /// <summary>
- /// Creates the server.
- /// </summary>
- /// <returns>IHttpServer.</returns>
- public static IHttpServer CreateServer(IServerApplicationHost applicationHost,
- ILogManager logManager,
- IServerConfigurationManager config,
- INetworkManager networkmanager,
- IMemoryStreamFactory streamProvider,
- string serverName,
- string defaultRedirectpath,
- ITextEncoding textEncoding,
- ISocketFactory socketFactory,
- ICryptoProvider cryptoProvider,
- IJsonSerializer json,
- IXmlSerializer xml,
- IEnvironmentInfo environment,
- X509Certificate certificate,
- IFileSystem fileSystem,
- bool enableDualModeSockets)
- {
- var logger = logManager.GetLogger("HttpServer");
- return new HttpListenerHost(applicationHost,
- logger,
- config,
- serverName,
- defaultRedirectpath,
- networkmanager,
- streamProvider,
- textEncoding,
- socketFactory,
- cryptoProvider,
- json,
- xml,
- environment,
- certificate,
- GetParseFn,
- enableDualModeSockets,
- fileSystem);
- }
- private static Func<string, object> GetParseFn(Type propertyType)
- {
- return s => JsvReader.GetParseFn(propertyType)(s);
- }
- }
- }
|