Akka.Remote.EndpointRegistry.HasWriteableEndpointFor C# (CSharp) Метод

HasWriteableEndpointFor() публичный Метод

public HasWriteableEndpointFor ( Akka.Actor.Address address ) : bool
address Akka.Actor.Address
Результат bool
        public bool HasWriteableEndpointFor(Address address)
        {
            var policy = WritableEndpointWithPolicyFor(address);
            return policy is EndpointManager.Pass;
        }

Usage Example

Пример #1
0
        private void CreateAndRegisterEndpoint(AkkaProtocolHandle handle, int?refuseUid)
        {
            var writing = _settings.UsePassiveConnections && !_endpoints.HasWriteableEndpointFor(handle.RemoteAddress);

            _eventPublisher.NotifyListeners(new AssociatedEvent(handle.LocalAddress, handle.RemoteAddress, true));
            var endpoint = CreateEndpoint(
                handle.RemoteAddress,
                handle.LocalAddress,
                _transportMapping[handle.LocalAddress],
                _settings,
                writing,
                handle,
                refuseUid);

            if (writing)
            {
                _endpoints.RegisterWritableEndpoint(handle.RemoteAddress, endpoint, handle.HandshakeInfo.Uid, refuseUid);
            }
            else
            {
                _endpoints.RegisterReadOnlyEndpoint(handle.RemoteAddress, endpoint, handle.HandshakeInfo.Uid);
                if (!_endpoints.HasWriteableEndpointFor(handle.RemoteAddress))
                {
                    _endpoints.RemovePolicy(handle.RemoteAddress);
                }
            }
        }