Ejemplo n.º 1
0
 public WorldServer(WorldServerMgr manager, ushort port)
     : base(port)
 {
     _manager  = manager;
     _api      = manager.Api;
     _tag.Type = ServerType.World;
 }
        private static void CheckReconnection(
            Func <StatsdConfig, AbstractServer> serverFactory,
            StatsdConfig config)
        {
            AbstractServer server = null;

            try
            {
                server = serverFactory(config);
                using (var service = new DogStatsdService())
                {
                    service.Configure(config);
                    service.Increment("test1");
                    Assert.AreEqual("test1:1|c", server.Stop().Single());
                    server.Dispose();

                    // Send a metric when the server is not running.
                    service.Increment("test2");
                    Task.Delay(TimeSpan.FromMilliseconds(500)).Wait();

                    // Restart the server
                    server = serverFactory(config);
                    service.Increment("test3");
                    service.Dispose();
                    Assert.AreEqual("test3:1|c", server.Stop().Last());
                }
            }
            finally
            {
                server?.Dispose();
            }
        }
Ejemplo n.º 3
0
 private void ServerInternalShutdown(AbstractServer server, Protocol.Gluon.Model.ShutdownType data)
 {
     lock (Servers)
     {
         Servers.Remove(server);
     }
     ShutdownMode = data;
 }
Ejemplo n.º 4
0
 private void ServerInternalShutdown(AbstractServer server, ShutdownType data)
 {
     lock (Servers)
     {
         Servers.Remove(server);
     }
     ShutdownMode = data;
 }
Ejemplo n.º 5
0
        private void BtConnect_Click(object sender, EventArgs e)
        {
            TcpChannel tcpChannel = new TcpChannel(8889);

            ChannelServices.RegisterChannel(tcpChannel, true);
            server = (AbstractServer)Activator.GetObject(
                typeof(AbstractServer),
                "tcp://127.0.0.1:8888/NoteServer");
        }
Ejemplo n.º 6
0
        public void SendProtocol(IProtocol protocol, IPEndPoint from, string to)
        {
            if (protocol.Action != ActionType.Response)
            {
                return;
            }
            var            bytes  = protocol.GetBytes();
            AbstractServer server = protocol.Header switch
            {
                HeaderType.Discover => _multicastBroadcastServers.First(multicastServer =>
                                                                        multicastServer.EndPoint.Equals(from)),
                HeaderType.Time => _tcpServers.First(multithreadingServer =>
                                                     multithreadingServer.EndPoint.Equals(from)),
                _ => throw new ArgumentOutOfRangeException()
            };

            server.Send(bytes, to);
        }
Ejemplo n.º 7
0
 public TCPUserToken(BufferManager bufferManager, AbstractServer server) : base(server)
 {
     rcvEventArg            = new SocketAsyncEventArgs();
     rcvEventArg.Completed += new EventHandler <SocketAsyncEventArgs>(RcvCompleted);
     rcvEventArg.UserToken  = this;
     if (bufferManager == null || bufferManager.SetBuffer(rcvEventArg))
     {
         rcvEventArg.SetBuffer(new byte[kDefaultBufferSize], 0, kDefaultBufferSize);
     }
     sndEventArg            = new SocketAsyncEventArgs();
     sndEventArg.Completed += new EventHandler <SocketAsyncEventArgs>(SndCompleted);
     sndEventArg.UserToken  = this;
     if (bufferManager == null || bufferManager.SetBuffer(sndEventArg))
     {
         sndEventArg.SetBuffer(new byte[kDefaultBufferSize], 0, kDefaultBufferSize);
     }
     SendBufferOffset = sndEventArg.Offset;
     SendBufferLimit  = SendBufferOffset + sndEventArg.Count;
 }
Ejemplo n.º 8
0
        private static void SendAndCheckMetricsAreReceived(AbstractServer server, StatsdConfig config, int metricToSendCount)
        {
            using (server)
            {
                using (var service = new DogStatsdService())
                {
                    service.Configure(config);
                    for (int i = 0; i < metricToSendCount; ++i)
                    {
                        service.Increment($"test{i}", tags: new[] { "KEY:VALUE" });
                    }

                    service.Dispose();
                    var metricsReceived = server.Stop();
                    Assert.AreEqual(metricToSendCount, metricsReceived.Count);
                    for (int i = 0; i < metricToSendCount; ++i)
                    {
                        Assert.AreEqual($"test{i}:1|c|#KEY:VALUE", metricsReceived[i]);
                    }
                }
            }
        }
Ejemplo n.º 9
0
 public Client(ClientMgr manager, ushort port)
     : base(port)
 {
     _manager = manager;
     _api     = manager.Api;
 }