예제 #1
0
 public WebServer(IWebSocketServerFactory webSocketServerFactory, ILoggerFactory loggerFactory, IList <string> supportedSubProtocols = null)
 {
     _logger = loggerFactory.CreateLogger <WebServer>();
     _webSocketServerFactory = webSocketServerFactory;
     _loggerFactory          = loggerFactory;
     _supportedSubProtocols  = new HashSet <string>(supportedSubProtocols ?? new string[0]);
 }
예제 #2
0
        public WebsocketServer(IWebSocketServerFactory webSocketServerFactory, IList <string> supportedSubProtocols = null)
        {
            // Get Host IP Adress
            Socket_IP = GetLocalIPAddress();

            // WebSocket
            _webSocketServerFactory = webSocketServerFactory;
            _supportedSubProtocols  = new HashSet <string>(supportedSubProtocols ?? new string[0]);
        }
예제 #3
0
파일: Program.cs 프로젝트: kapiya/Warewolf
 public Implementation(ILoggerContext context, IWebSocketServerFactory webSocketServerFactory, IConsoleWindowFactory consoleWindowFactory, ILogServerFactory logServerFactory, IWriter writer, IPauseHelper pause)
 {
     _consoleWindowFactory = consoleWindowFactory;
     _context = context;
     _webSocketServerFactory = webSocketServerFactory;
     _writer           = writer;
     _pause            = pause;
     _logServerFactory = logServerFactory;
 }
예제 #4
0
        static void Main(string[] args)
        {
            _loggerFactory = new LoggerFactory();
            _loggerFactory.AddConsole(LogLevel.Trace);
            _logger = _loggerFactory.CreateLogger <Program>();
            _webSocketServerFactory = new WebSocketServerFactory();
            Task task = StartWebServer();

            task.Wait();
        }
예제 #5
0
        static void Main(string[] args)
        {
            const int DefaultBlockSize = 16 * 1024;
            const int MaxBufferSize    = 128 * 1024;

            _recyclableMemoryStreamManager = new RecyclableMemoryStreamManager(DefaultBlockSize, 4, MaxBufferSize);
            _webSocketServerFactory        = new WebSocketServerFactory(_recyclableMemoryStreamManager.GetStream);
            Task task = StartWebServer();

            task.Wait();
        }
예제 #6
0
        static void Main(string[] args)
        {
            _loggerFactory = new LoggerFactory();
            _loggerFactory.AddConsole(LogLevel.Trace);
            _logger = _loggerFactory.CreateLogger <Program>();
            const int DefaultBlockSize = 16 * 1024;
            const int MaxBufferSize    = 128 * 1024;

            _recyclableMemoryStreamManager = new RecyclableMemoryStreamManager(DefaultBlockSize, 4, MaxBufferSize);
            _webSocketServerFactory        = new WebSocketServerFactory(_recyclableMemoryStreamManager.GetStream);
            Task task = StartWebServer();

            task.Wait();
        }
예제 #7
0
 public static void Run()
 {
     try
     {
         // Start Websocket Task
         _webSocketServerFactory = new WebSocketServerFactory();
         Task task = Task.Run(() => StartWebServer());
         task.Wait();
     }
     catch (Exception ex)
     {
         AsyncLog.Error(ex.ToString());
         AsyncLog.Error("Press any key to exit...");
         Console.ReadKey();
     }
 }
예제 #8
0
 public WebServer(IWebSocketServerFactory webSocketServerFactory,
                  ILoggerFactory loggerFactory,
                  bool isPipelineImplementation,
                  bool isProtobufSerializationEnabled,
                  bool isLoadTest,
                  int bufferSizeInBytes,
                  IList <string> supportedSubProtocols = null)
 {
     myIsPipelineImplementation       = isPipelineImplementation;
     myIsProtobufSerializationEnabled = isProtobufSerializationEnabled;
     _logger = loggerFactory.CreateLogger <WebServer>();
     _webSocketServerFactory = webSocketServerFactory;
     _loggerFactory          = loggerFactory;
     _supportedSubProtocols  = new HashSet <string>(supportedSubProtocols ?? new string[0]);
     if (isLoadTest)
     {
         myBufferSize = 1 * 1024 * 1024 * 1024; // 1GB
     }
     else
     {
         myBufferSize = bufferSizeInBytes != -1 ? bufferSizeInBytes : 1024 * 1024;
     }
 }
        static void Main(string[] args)
        {
            bool isPipelineImplementation       = false;
            bool isProtobufSerializationEnabled = false;
            bool isLoadTest     = false;
            int  maxBinaryBytes = -1;

            if (args.Contains("pipe"))
            {
                isPipelineImplementation = true;
            }
            if (args.Contains("pb"))
            {
                isProtobufSerializationEnabled = true;
            }
            if (args.Contains("load"))
            {
                isLoadTest = true;
            }
            foreach (string arg in args)
            {
                if (int.TryParse(arg, out maxBinaryBytes))
                {
                    break;
                }
            }

            _loggerFactory = new LoggerFactory();
            _loggerFactory.AddConsole(LogLevel.Trace);
            _logger = _loggerFactory.CreateLogger <Program>();
            _webSocketServerFactory = new WebSocketServerFactory();
            Console.WriteLine("Pipeline enabled: {0}, Protobuf serialization enabled: {1}, Load test: {2}, MaxBinaryBytes: {3}", isPipelineImplementation, isProtobufSerializationEnabled, isLoadTest, maxBinaryBytes);
            Task task = StartWebServer(isPipelineImplementation, isProtobufSerializationEnabled, isLoadTest, maxBinaryBytes);

            task.Wait();
        }
예제 #10
0
 public WebServer(IWebSocketServerFactory webSocketServerFactory)
 {
     _webSocketServerFactory = webSocketServerFactory;
 }
예제 #11
0
 public LogServer(IWebSocketServerFactory webSocketServerFactory, IWriter writer, ILoggerContext loggerContext, IAuditCommandConsumerFactory auditCommandConsumerFactory)
     : this(webSocketServerFactory, writer, loggerContext)
 {
     _auditCommandConsumerFactory = auditCommandConsumerFactory;
 }
예제 #12
0
 public LogServer(IWebSocketServerFactory webSocketServerFactory, IWriter writer, ILoggerContext loggerContext)
 {
     _webSocketServerFactory = webSocketServerFactory ?? throw new ArgumentNullException(nameof(webSocketServerFactory));
     _writer        = writer ?? throw new ArgumentNullException(nameof(writer));
     _loggerContext = loggerContext ?? throw new ArgumentNullException(nameof(loggerContext));
 }
예제 #13
0
 public ILogServer New(IWebSocketServerFactory webSocketServerFactory, IWriter writer, ILoggerContext loggerContext)
 {
     return(new LogServer(webSocketServerFactory, writer, loggerContext));
 }
예제 #14
0
        //private readonly ILoggerFactory _loggerFactory;

        public WebServer(IWebSocketServerFactory webSocketServerFactory)
        {
            //_logger = loggerFactory.CreateLogger<WebServer>();
            _webSocketServerFactory = webSocketServerFactory;
            //_loggerFactory = loggerFactory;
        }
예제 #15
0
 public WebServer()
 {
     this._recyclableMemoryStreamManager = new RecyclableMemoryStreamManager(DefaultBlockSize, 4, MaxBufferSize);
     this._webSocketServerFactory        = new WebSocketServerFactory(this._recyclableMemoryStreamManager.GetStream);
 }
예제 #16
0
 public WebServer(IWebSocketServerFactory webSocketServerFactory, IList <string> supportedSubProtocols = null, string GamePath = "/game")
 {
     _webSocketServerFactory = webSocketServerFactory;
     _supportedSubProtocols  = new HashSet <string>(supportedSubProtocols ?? new string[0]);
     _GamePath = GamePath;
 }