public PostmessageService( IPostmessageRepository postmessageRepository, IMessageResolver messageResolver, ITransitManager transitManager) { _postmessageRepository = postmessageRepository; _messageResolver = messageResolver; _transitManager = transitManager; }
public Session(TcpService service, Socket client, IMessageBuilder msgBuilder, IMessageResolver msgResolver) { this.Socket = client; this.ID = _sessionId.Generate(); this.Service = service; this._closeReason = CloseReason.Unknown; this._lastActivateTime = Environment.TickCount; this._messageBuilder = msgBuilder; this._messageResolver = msgResolver; }
public Session(bool isClient, Int64 uniqueId, IPacketDispatcher dispatcher, IMessageResolver messageResolver, ServerOption serverOption) { IsClient = isClient; UniqueId = uniqueId; Dispatcher = dispatcher; ServerOpt = serverOption; RefMsgResolver = messageResolver; SendingList = new List <ArraySegment <byte> >(); LatestHeartbeatTime = DateTime.Now.Ticks; }
public MessageProcessorV2(IMessageResolver resolver) { _parsableMessages = new Dictionary <ushort, Type>(); _messageAttributes = new Dictionary <Type, MessageAttribute>(); _validators = new Dictionary <Type, MessageValidator>(); _nestedValidators = new Dictionary <Type, MessageValidator>(); var resolvedMessages = resolver.Resolve(); AddMessages(resolvedMessages); Console.WriteLine("Parsable Messages Cached: {0}", _parsableMessages.Count); Console.WriteLine("Attributes Cached: {0}", _messageAttributes.Count); }
internal static IMessageResolver GetMessageResolver(this IMessageResolver messageResolver, RestClientDefaultSettings configuration) { IMessageResolver result; if (configuration?.DefaultMessageResolver != null && messageResolver == null) { result = configuration.DefaultMessageResolver; } else if (messageResolver != null) { result = messageResolver; } else { result = new JsonMessageResolver(); } return(result); }
public void Dispose(bool disposing) { if (disposing) { // send queue에 있던놈 메모리 해제 하기 ArraySegment <byte> arraySeg; while (_sendQueue.TryDequeue(out arraySeg)) { Service._pooledBufferManager.Return(arraySeg.Array); } // 소켓 닫기 try { Socket.Close(); Socket = null; } catch (Exception e) { Service.Logger.Log(LogLevel.Debug, "Socket Close 예외 발생", e); } // 타이머 종료( Dispose 되어도 비동기적으로 타이머가 호출되기 때문에 Update 가 호출될수 있음 ) _updateTimer.Dispose(); _updateTimer = null; // 닫힘 알리기 Service.CloseSession(ID, _closeReason, _receiveEventArgs, _sendEventArgs); Service = null; if (_messageResolver != null) { _messageResolver.OnClose(this); _messageResolver = null; } if (_messageBuilder != null) { _messageBuilder.OnClose(this); _messageResolver = null; } } }
/// <summary> /// 로직 스레드를 사용하려면 use_logicthread를 true로 설정한다. /// -> 하나의 로직 스레드를 생성한다. /// -> 메시지는 큐잉되어 싱글 스레드에서 처리된다. /// /// 로직 스레드를 사용하지 않으려면 use_logicthread를 false로 설정한다. /// -> 별도의 로직 스레드는 생성하지 않는다. /// -> IO스레드에서 직접 메시지 처리를 담당하게 된다. /// </summary> /// <param name="use_logicthread">true=Create single logic thread. false=Not use any logic thread.</param> public NetworkService(ServerOption serverOption, IPacketDispatcher userPacketDispatcher = null, IMessageResolver userMessageResolver = null) { ServerOpt = serverOption; UserManager = new SessionManager(); if (userPacketDispatcher == null) { PacketDispatcher = new DefaultPacketDispatcher(); } else { PacketDispatcher = userPacketDispatcher; } if (userMessageResolver == null) { MessageResolver = new DefaultMessageResolver(ServerOpt.MaxPacketSize * 3); } else { MessageResolver = userMessageResolver; } }
public JsonProtocol(IMessageResolver messageResolver) { _messageResolver = messageResolver; }
/// <summary> /// /// </summary> /// <param name="messageResolver"> /// The Message resolver /// </param> public static void SetMessageResolver(IMessageResolver messageResolver) { SdmxException._messageResolver = messageResolver; }
public BinaryProtocol(IMessageResolver messageResolver) { _messageResolver = messageResolver; }
public DeflateResolver(IMessageResolver resolver, int compressionThreshold) { this.BaseResolver = resolver; this.CompressionThreshold = compressionThreshold; }
public DeflateResolver(IMessageResolver resolver) : this(resolver, DefaultCompressionThreshold) { }