Akka.Remote.EndpointManager.CreateEndpoint C# (CSharp) 메소드

CreateEndpoint() 개인적인 메소드

private CreateEndpoint ( Akka.Actor.Address remoteAddress, Akka.Actor.Address localAddress, Akka.Remote.Transport.AkkaProtocolTransport transport, Akka.Remote.RemoteSettings endpointSettings, bool writing, AkkaProtocolHandle handleOption = null, int refuseUid = null ) : IActorRef
remoteAddress Akka.Actor.Address
localAddress Akka.Actor.Address
transport Akka.Remote.Transport.AkkaProtocolTransport
endpointSettings Akka.Remote.RemoteSettings
writing bool
handleOption AkkaProtocolHandle
refuseUid int
리턴 IActorRef
        private IActorRef CreateEndpoint(
            Address remoteAddress,
            Address localAddress,
            AkkaProtocolTransport transport,
            RemoteSettings endpointSettings,
            bool writing,
            AkkaProtocolHandle handleOption = null,
            int? refuseUid = null)
        {
            System.Diagnostics.Debug.Assert(_transportMapping.ContainsKey(localAddress));
            System.Diagnostics.Debug.Assert(writing || refuseUid == null);

            IActorRef endpointActor;

            if (writing)
            {
                endpointActor =
                    Context.ActorOf(RARP.For(Context.System)
                    .ConfigureDispatcher(
                        ReliableDeliverySupervisor.ReliableDeliverySupervisorProps(handleOption, localAddress,
                            remoteAddress, refuseUid, transport, endpointSettings, new AkkaPduProtobuffCodec(),
                            _receiveBuffers, endpointSettings.Dispatcher)
                            .WithDeploy(Deploy.Local)),
                        string.Format("reliableEndpointWriter-{0}-{1}", AddressUrlEncoder.Encode(remoteAddress),
                            _endpointId.Next()));
            }
            else
            {
                endpointActor =
                    Context.ActorOf(RARP.For(Context.System)
                    .ConfigureDispatcher(
                        EndpointWriter.EndpointWriterProps(handleOption, localAddress, remoteAddress, refuseUid,
                            transport, endpointSettings, new AkkaPduProtobuffCodec(), _receiveBuffers,
                            reliableDeliverySupervisor: null)
                            .WithDeploy(Deploy.Local)),
                        string.Format("endpointWriter-{0}-{1}", AddressUrlEncoder.Encode(remoteAddress), _endpointId.Next()));
            }

            Context.Watch(endpointActor);
            return endpointActor;
        }