Пример #1
0
        private StreamingNetworkService(
            IObserver <NsMessage <T> > universalObserver,
            IObserver <IRemoteMessage <NsMessage <T> > > remoteMessageUniversalObserver,
            INameClient nameClient,
            StreamingRemoteManagerFactory remoteManagerFactory,
            NsMessageStreamingCodec <T> codec,
            ILocalAddressProvider localAddressProvider)
        {
            _remoteManager = remoteManagerFactory.GetInstance(localAddressProvider.LocalAddress, codec);

            if (universalObserver != null)
            {
                // Create and register incoming message handler
                // TODO[REEF-419] This should use the TcpPortProvider mechanism
                var anyEndpoint = new IPEndPoint(IPAddress.Any, 0);
                _universalObserverDisposable = _remoteManager.RegisterObserver(anyEndpoint, universalObserver);
            }
            else
            {
                _universalObserverDisposable = null;
            }

            _remoteMessageUniversalObserver = remoteMessageUniversalObserver != null?
                                              _remoteManager.RegisterObserver(remoteMessageUniversalObserver) : null;

            _nameClient    = nameClient;
            _connectionMap = new Dictionary <IIdentifier, IConnection <T> >();

            Logger.Log(Level.Verbose, "Started network service");
        }
Пример #2
0
 private StreamingNetworkService(
     IObserver <IRemoteMessage <NsMessage <T> > > remoteMessageUniversalObserver,
     INameClient nameClient,
     StreamingRemoteManagerFactory remoteManagerFactory,
     NsMessageStreamingCodec <T> codec,
     ILocalAddressProvider localAddressProvider)
     : this(null, remoteMessageUniversalObserver, nameClient, remoteManagerFactory, codec, localAddressProvider)
 {
 }
Пример #3
0
        private StreamingNetworkService(
            IObserver <NsMessage <T> > messageHandler,
            IIdentifierFactory idFactory,
            INameClient nameClient,
            StreamingRemoteManagerFactory remoteManagerFactory,
            NsMessageStreamingCodec <T> codec,
            IInjector injector)
        {
            IPAddress localAddress = NetworkUtils.LocalIPAddress;

            _remoteManager = remoteManagerFactory.GetInstance(localAddress, codec);

            // Create and register incoming message handler
            // TODO[REEF-419] This should use the TcpPortProvider mechanism
            var anyEndpoint = new IPEndPoint(IPAddress.Any, 0);

            _messageHandlerDisposable = _remoteManager.RegisterObserver(anyEndpoint, messageHandler);

            _nameClient    = nameClient;
            _connectionMap = new Dictionary <IIdentifier, IConnection <T> >();

            Logger.Log(Level.Info, "Started network service");
        }