private CcyPairRate GetCcyPairRate(CcyPair request) { CcyPairRate response; switch (request.CcyPairName) { case "EURUSD": response = new CcyPairRate { CcyPairName = "EURUSD", Rate = 1.15 + 0.05 * _random.NextDouble() }; break; case "EURGBP": response = new CcyPairRate { CcyPairName = "EURGBP", Rate = 0.87 + 0.05 * _random.NextDouble() }; break; default: throw new ArgumentOutOfRangeException($"Unknown currency pair: {request.CcyPairName}"); } return(response); }
private async Task <CcyPairRate> GetRateAsync(CcyPair request, MethodCallContext context) { Console.WriteLine("Received request: {0}", request); CcyPairRate response; switch (request.CcyPairName) { case "EURUSD": response = new CcyPairRate { CcyPairName = "EURUSD", Rate = 1.15 + 0.05 * _random.NextDouble() }; break; case "EURGBP": response = new CcyPairRate { CcyPairName = "EURGBP", Rate = 0.87 + 0.05 * _random.NextDouble() }; break; default: throw new ArgumentOutOfRangeException($"Unknown currency pair: {request.CcyPairName}"); } Console.WriteLine("Sending response: {0}", response); return(response); }