Exemple #1
0
        private async static Task Process()
        {
            using (var client = new ChannelTcpClient <object>(
                       new MicroMessageEncoder(new JsonSerializer()),
                       new MicroMessageDecoder(new JsonSerializer())))
            {
                ObjectFactory.Configure(x => x.Scan(z =>
                {
                    z.AssemblyContainingType <IRequestResponseService>();
                    z.With(new ServiceFactoryConvention(new ServiceExecutor(client)));
                    z.AddAllTypesOf <IMicroService>();
                }));


                await client.ConnectAsync(IPAddress.Parse("127.0.0.1"), 1234);

                var srv = ObjectFactory.GetInstance <IRequestResponseService>();

                var result = srv.Call(
                    new TestContract {
                    Text = "Hello text 1"
                },
                    new TestContract {
                    Text = "Hello text 2"
                });

                Console.WriteLine(result);

                await client.CloseAsync();
            }
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="CqsClient"/> class.
 /// </summary>
 /// <param name="serializer">Serializer to be used for the transported messages.</param>
 public CqsClient(Func <IMessageSerializer> serializer)
 {
     _client = new ChannelTcpClient(new MicroMessageEncoder(serializer()),
                                    new MicroMessageDecoder(serializer()));
     _client.Filter = OnMessageReceived;
     _cleanuptimer  = new Timer(OnCleanup);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="CqsClient"/> class.
 /// </summary>
 public CqsClient()
 {
     _client = new ChannelTcpClient(
         new MicroMessageEncoder(new DataContractMessageSerializer()),
         new MicroMessageDecoder(new DataContractMessageSerializer()));
     _client.Filter = OnMessageReceived;
     _cleanuptimer  = new Timer(OnCleanup, 0, 10000, 10000);
 }
Exemple #4
0
    static void Main(string[] args)
    {
        var server = new ChannelTcpListener();

        server.MessageReceived = OnServerReceivedMessage;
        server.Start(IPAddress.Any, 0);

        var client = new ChannelTcpClient <object>(new MicroMessageEncoder(new DataContractMessageSerializer()),
                                                   new MicroMessageDecoder(new DataContractMessageSerializer()));

        client.ConnectAsync(IPAddress.Loopback, server.LocalPort).Wait();
        client.SendAsync(new FileStream("TextSample.txt", FileMode.Open)).Wait();


        Console.ReadLine();
    }
Exemple #5
0
 public ServiceExecutor(ChannelTcpClient <object> client)
 {
     _client = client;
 }