private static async Task LongGreetClientStream(Channel channel) { Console.WriteLine("Long greet client stream"); var client = new GreetingService.GreetingServiceClient(channel); var greeting = new Greeting() { FirstName = "Stanislaw", LastName = "Banski" }; var longRequest = new LongGreetRequest() { Greeting = greeting }; var stream = client.LongGreet(); foreach (int i in Enumerable.Range(1, 10)) { await stream.RequestStream.WriteAsync(longRequest); } await stream.RequestStream.CompleteAsync(); var longResponse = await stream.ResponseAsync; Console.WriteLine(longResponse.Result); }
static async Task Main(string[] args) { Channel channel = new Channel(target, ChannelCredentials.Insecure); await channel.ConnectAsync().ContinueWith((task) => { if (task.Status == TaskStatus.RanToCompletion) { Console.WriteLine("The Client Connected Successfully"); } }); var client = new GreetingService.GreetingServiceClient(channel); try { var response = client.greet_with_deadline( new GreetingRequest() { Name = "ProgramSkan" }, //deadline: DateTime.UtcNow.AddMilliseconds(500)//no error since server takes 300ms to finish task deadline: DateTime.UtcNow.AddMilliseconds(100) //error because server takes 300ms to finish task ); Console.WriteLine(response.Result); } catch (RpcException e) when(e.StatusCode == StatusCode.DeadlineExceeded) { Console.WriteLine("Error : " + e.Status.Detail); } channel.ShutdownAsync().Wait(); Console.ReadKey(); }
private static async Task GreetServerStream(Channel channel) { Console.WriteLine("Greet stream"); var client = new GreetingService.GreetingServiceClient(channel); var greeting = new Greeting() { FirstName = "Stanislaw", LastName = "Banski" }; var requestForStream = new GreetManyTimesRequest() { Greeting = greeting }; var responseStream = client.GreetManyTimes(requestForStream); while (await responseStream.ResponseStream.MoveNext()) { Console.WriteLine(responseStream.ResponseStream.Current.Result); await Task.Delay(200); } Console.WriteLine(""); }
public ClientEndpoint() { const string Host = "localhost"; const int Port = 50051; this.channel = new Channel($"{Host}:{Port}", ChannelCredentials.Insecure); Client = new GreetingService.GreetingServiceClient(channel); }
private static void Greet(GreetingService.GreetingServiceClient greetingClient) { var greeting = new Greeting() { FirstName = "Kevin Hayes", LastName = "Anderson" }; var greetRequest = new GreetingRequest() { Greeting = greeting }; var greetResponse = greetingClient.Greet(greetRequest); Console.WriteLine(greetResponse.Result); }
//const string target = "127.0.0.1:50052"; static async Task Main(string[] args) { var clientCertificate = File.ReadAllText("ssl/client.crt"); var clientKey = File.ReadAllText("ssl/client.key"); var caCertificate = File.ReadAllText("ssl/ca.crt"); var channelCredentials = new SslCredentials(caCertificate, new KeyCertificatePair(clientCertificate, clientKey)); //Channel channel = new Channel(target, channelCredentials); Channel channel = new Channel("localhost", 50052, ChannelCredentials.Insecure); await channel.ConnectAsync().ContinueWith((task) => { if (task.Status == TaskStatus.RanToCompletion) { Console.WriteLine("The client connected successfully"); } }); var dummyClient = new DummyService.DummyServiceClient(channel); var greetingClient = new GreetingService.GreetingServiceClient(channel); Greet(greetingClient); //await GreetMany(greetingClient); //await LongGreet(greetingClient); //await GreetEveryOne(greetingClient); //GreetWithDeadline(greetingClient); var calculatorClient = new CalculatorService.CalculatorServiceClient(channel); //Add(calculatorClient); //await PrimeNoDecomp(calculatorClient); //await ComputeAverage(calculatorClient); //await FindMaximum(calculatorClient); //Sqrt(calculatorClient); var blogClient = new BlogService.BlogServiceClient(channel); //var newBlog = CreateBlog(blogClient); //ReadBlog(blogClient); //UpdateBlog(blogClient, newBlog); //DeleteBlog(blogClient, newBlog); await ListBlog(blogClient); channel.ShutdownAsync().Wait(); Console.ReadKey(); }
private static async Task GreetEveryOne(GreetingService.GreetingServiceClient greetingClient) { var greetEveryOneStream = greetingClient.GreetEveryOne(); var greetEveryOneResponseReader = Task.Run(async() => { while (await greetEveryOneStream.ResponseStream.MoveNext()) { Console.WriteLine(greetEveryOneStream.ResponseStream.Current.Result); } }); Greeting[] greetings = { new Greeting() { FirstName = "Kevin Hayes", LastName = "Anderson" }, new Greeting() { FirstName = "John", LastName = "Doe" }, new Greeting() { FirstName = "Ford", LastName = "Henry" }, new Greeting() { FirstName = "Bob", LastName = "Miller" }, new Greeting() { FirstName = "Clive", LastName = "Gerald" }, }; foreach (var greeting in greetings) { await greetEveryOneStream.RequestStream.WriteAsync(new GreetEveryOneRequest() { Greeting = greeting }); } await greetEveryOneStream.RequestStream.CompleteAsync(); await greetEveryOneResponseReader; }
//Unary---Uncomment for Unary //static void Main(string[] args) //{ // Channel channel = new Channel(target, ChannelCredentials.Insecure); // channel.ConnectAsync().ContinueWith((task)=> // { // if (task.Status == TaskStatus.RanToCompletion) // Console.WriteLine("The Client connected successfully"); // }); // //;var client = new DummyService.DummyServiceClient(channel); // var client = new GreetingService.GreetingServiceClient(channel); // var greeting = new Greeting() // { // FirstName = "Yogi", // LatsName = "Babu" // }; // var request = new GreetingRequest() { Greeting = greeting }; // var response = client.Greet(request); // Console.WriteLine(response.Result); // channel.ShutdownAsync().Wait(); // Console.ReadKey(); //} // //Server Stream //static async Task Main(string[] args) //{ // Channel channel = new Channel(target, ChannelCredentials.Insecure); // await channel.ConnectAsync().ContinueWith((task) => // { // if (task.Status == TaskStatus.RanToCompletion) // Console.WriteLine("The Client connected successfully"); // }); // //;var client = new DummyService.DummyServiceClient(channel); // var client = new GreetingService.GreetingServiceClient(channel); // var greeting = new Greeting() // { // FirstName = "Yogi", // LatsName = "Babu" // }; // var request = new GreetingManyTimesRequest() { Greeting = greeting }; // var response = client.GreetingManyTimes(request); // while(await response.ResponseStream.MoveNext()) // { // Console.WriteLine(response.ResponseStream.Current.Result); // await Task.Delay(200); // } // channel.ShutdownAsync().Wait(); // Console.ReadKey(); //} ////Client Stream //static async Task Main(string[] args) //{ // Channel channel = new Channel(target, ChannelCredentials.Insecure); // await channel.ConnectAsync().ContinueWith((task) => // { // if (task.Status == TaskStatus.RanToCompletion) // Console.WriteLine("The Client connected successfully"); // }); // var client = new GreetingService.GreetingServiceClient(channel); // var greeting = new Greeting() // { // FirstName = "Yogi", // LatsName = "Babu" // }; // var request = new LongGreetRequest() { Greeting = greeting }; // var stream = client.LongGreet(); // foreach (int i in Enumerable.Range(1, 10)) // { // await stream.RequestStream.WriteAsync(request); // } // await stream.RequestStream.CompleteAsync();//request call complete then response // var response = await stream.ResponseAsync; // Console.WriteLine(response.Result); // channel.ShutdownAsync().Wait(); // Console.ReadKey(); //} //Bi-Directional Streaming static async Task Main(string[] args) { Channel channel = new Channel(target, ChannelCredentials.Insecure); await channel.ConnectAsync().ContinueWith((task) => { if (task.Status == TaskStatus.RanToCompletion) { Console.WriteLine("The Client connected successfully"); } }); var client = new GreetingService.GreetingServiceClient(channel); await DOGreetEveryone(client); channel.ShutdownAsync().Wait(); Console.ReadKey(); }
private static async Task GreetMany(GreetingService.GreetingServiceClient greetingClient) { var greeting = new Greeting() { FirstName = "Kevin Hayes", LastName = "Anderson" }; var greetManyRequest = new GreetManyRequest() { Greeting = greeting }; var greetmanyResponse = greetingClient.GreetMany(greetManyRequest); while (await greetmanyResponse.ResponseStream.MoveNext()) { Console.WriteLine(greetmanyResponse.ResponseStream.Current.Result); await Task.Delay(200); } }
public void WhenTheElvesSendAGreetingMessageWithIdXAndMessageY(string id, string message) { // Call the ESB web service and store the acknowledgment SendGreetingResponse = new GreetingService.GreetingServiceClient().SendGreeting( new Greeting { Id = id, Message = message }); }