public EndpointWriter( AkkaProtocolHandle handleOrActive, Address localAddress, Address remoteAddress, int? refuseUid, AkkaProtocolTransport transport, RemoteSettings settings, AkkaPduCodec codec, ConcurrentDictionary<EndpointManager.Link, EndpointManager.ResendState> receiveBuffers, IActorRef reliableDeliverySupervisor = null) : base(localAddress, remoteAddress, transport, settings) { _handleOrActive = handleOrActive; _refuseUid = refuseUid; _codec = codec; _reliableDeliverySupervisor = reliableDeliverySupervisor; _system = Context.System; _provider = RARP.For(Context.System).Provider; _msgDispatcher = new DefaultMessageDispatcher(_system, _provider, _log); _receiveBuffers = receiveBuffers; Inbound = handleOrActive != null; _ackDeadline = NewAckDeadline(); _handle = handleOrActive; if (_handle == null) { Context.Become(Initializing); } else { Context.Become(Writing); } }