示例#1
0
        public static async Task Main()
        {
            var configuration = new NetClientConfiguration("127.0.0.1", 4444);
            var client        = new EchoClient(configuration);

            client.Connect();

            while (true)
            {
                if (!client.IsConnected)
                {
                    await Task.Delay(1000);
                }
                else
                {
                    string messageToSend = Console.ReadLine();

                    if (messageToSend == "quit")
                    {
                        client.Disconnect();
                        break;
                    }
                    else
                    {
                        client.SendMessageToServer(messageToSend);
                    }
                }
            }

            client.Dispose();
        }
 public void NetClientConnectWithInvalidConfigurationTest(NetClientConfiguration configuration, Type exceptionType)
 {
     using (INetClient client = new NetClient(configuration))
     {
         Assert.Throws(exceptionType, () => client.Connect());
     }
 }
        public async Task MainAsync()
        {
            var tokenSrc = new CancellationTokenSource();

            var clientConfig = new NetClientConfiguration("127.0.0.1", 27015);

            _client = new SourceRCONClient(clientConfig);
            _client.OnClientConnected      += Client_OnClientConnected;
            _client.OnClientDisconnected   += Client_OnClientDisconnected;
            _client.OnCommandResponse      += Client_OnCommandResponse;
            _client.OnAuthenticationResult += _client_OnAuthenticationResult;

            _client.Connect();

            while (true)
            {
                var inp = Console.ReadLine();
                if (inp.Equals("exit"))
                {
                    break;
                }

                _client.ExecCommand(inp);
            }

            _client.Disconnect();

            Console.WriteLine("Program will exit now!");
            Console.ReadLine();
        }
示例#4
0
        static async Task Main()
        {
            var configuration = new NetClientConfiguration("127.0.0.1", 4444);
            var client        = new ChatClient(configuration);

            Console.Write("Enter your name: ");
            client.Name = Console.ReadLine();

            client.Connect();

            while (true)
            {
                if (!client.IsConnected)
                {
                    await Task.Delay(1000);
                }
                else
                {
                    string message = Console.ReadLine();

                    if (message == "quit")
                    {
                        client.Disconnect();
                        break;
                    }
                    else
                    {
                        client.SendChatMessage(message);
                    }
                }
            }

            client.Dispose();
        }
        public NetClientTests()
        {
            var configuration = new NetClientConfiguration("127.0.0.1", 4444);

            _socketMock = new NetSocketMock();
            _client     = new Mock <NetClient>(configuration);
            _client.SetupGet(x => x.Socket).Returns(_socketMock);
        }
示例#6
0
 /// <summary>
 /// Creates a new <see cref="WorldCoreClient"/> instance.
 /// </summary>
 /// <param name="logger">Logger.</param>
 /// <param name="worldConfiguration">World server configuration.</param>
 /// <param name="coreConfiguration">Core server configuration.</param>
 /// <param name="handlerInvoker">Handler invoker.</param>
 public WorldCoreClient(ILogger <WorldCoreClient> logger, IOptions <WorldConfiguration> worldConfiguration, IOptions <CoreConfiguration> coreConfiguration, IHandlerInvoker handlerInvoker)
 {
     _logger = logger;
     WorldServerConfiguration = worldConfiguration.Value;
     CoreClientConfiguration  = coreConfiguration.Value;
     _handlerInvoker          = handlerInvoker;
     ClientConfiguration      = new NetClientConfiguration(CoreClientConfiguration.Host, CoreClientConfiguration.Port, BufferSize);
 }
示例#7
0
 /// <summary>
 /// Creates a new <see cref="ClusterCoreClient"/> instance.
 /// </summary>
 /// <param name="logger">Logger.</param>
 /// <param name="handlerInvoker">Handler invoker.</param>
 /// <param name="clusterConfiguration">Cluster server configuration.</param>
 /// <param name="coreConfiguration">Core server configuration.</param>
 public ClusterCoreClient(ILogger <ClusterCoreClient> logger, IHandlerInvoker handlerInvoker, IOptions <ClusterConfiguration> clusterConfiguration, IOptions <CoreConfiguration> coreConfiguration)
 {
     _logger              = logger;
     _handlerInvoker      = handlerInvoker;
     _coreConfiguration   = coreConfiguration.Value;
     ClusterConfiguration = clusterConfiguration.Value;
     ClientConfiguration  = new NetClientConfiguration(_coreConfiguration.Host, _coreConfiguration.Port, BufferSize);
     WorldServers         = new List <WorldServerInfo>();
 }
示例#8
0
 /// <summary>
 /// Creates a new <see cref="EchoClient"/> instance.
 /// </summary>
 /// <param name="clientConfiguration">Client configuration.</param>
 public EchoClient(NetClientConfiguration clientConfiguration)
     : base(clientConfiguration)
 {
 }
示例#9
0
 public SourceRCONClient(NetClientConfiguration clientConfiguration) : base(clientConfiguration)
 {
     PacketProcessor = new SourceRCONPacketProcessor();
 }
示例#10
0
 /// <summary>
 /// Creates a new <see cref="ChatClient"/> instance.
 /// </summary>
 /// <param name="clientConfiguration">Configuration.</param>
 public ChatClient(NetClientConfiguration clientConfiguration)
     : base(clientConfiguration)
 {
 }