public TestServer(int size, Func <string, byte[], string, byte[]> handler) { MaxMethodPayloadCharacterCount = size; _handler = handler; _server = new ChunkMethodServer(this, LogEx.Trace()); }
public TestChunkServer(IJsonSerializer serializer, int size, Func <string, byte[], string, byte[]> handler) { MaxMethodPayloadCharacterCount = size; _handler = handler; _serializer = serializer; _server = new ChunkMethodServer(_serializer, TraceLogger.Create()); }
public TestServer(int size, Func <string, byte[], string, byte[]> handler) { MaxMethodPayloadCharacterCount = size; _logger = new ConsoleLogger(); _handler = handler; _server = new ChunkMethodServer(this, _logger); }
/// <summary> /// Create router /// </summary> /// <param name="logger"></param> public MethodRouter(ILogger logger) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); // Create chunk server var server = new ChunkMethodServer(this, logger); _calltable = new Dictionary <string, IMethodInvoker> { [MethodNames.Call] = new ChunkMethodServerInvoker(server) }; }
/// <summary> /// Create router /// </summary> /// <param name="serializer"></param> /// <param name="logger"></param> public MethodRouter(IJsonSerializer serializer, ILogger logger) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _serializer = serializer ?? throw new ArgumentNullException(nameof(serializer)); // Create chunk server always var server = new ChunkMethodServer(_serializer, logger); _calltable = new Dictionary <string, IMethodInvoker> { { server.MethodName, server } }; }
/// <summary> /// Create router /// </summary> /// <param name="logger"></param> /// <param name="invokers"></param> public MethodRouter(ILogger logger, IEnumerable <IMethodInvoker> invokers = null) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _calltable = invokers?.ToDictionary(i => i.MethodName, i => i) ?? new Dictionary <string, IMethodInvoker>(); // Create chunk server var server = new ChunkMethodServer(this, logger); _calltable.Add(MethodNames.Call, new ChunkMethodServerInvoker(server));; }