// No publisher required, responses can simply be returned public QuoteResponseMessage HandleQuoteRequest(QuoteRequestMessage message) { string quote; switch (message.Amount) { case 1: // Well, they asked for it... :-) quote = "'"; break; case 2: quote = "\""; break; default: // We have to return a response. quote = null; break; } return(new QuoteResponseMessage { Quote = quote }); }
// No publisher required, responses can simply be returned public async Task <QuoteResponseMessage> HandleQuoteRequest(QuoteRequestMessage message) { string quote; switch (message.Amount) { case 1: // Well, they asked for it... :-) quote = "'"; break; case 2: quote = "\""; break; default: // We have to return a response. quote = null; break; } // Just gonna let them wait for a bit, to demonstrate async message handlers await Task.Delay(1000); return(new QuoteResponseMessage { Quote = quote }); }
public void ConvertFixObjectToFixMessage_ThrowsException_ForUnsupportedMessageType() { // There is no converter for the QuoteRequest message because only // the client sends it; the server has no need to generate it. var messageObject = new QuoteRequestMessage("Client", "Bank", 6, "rfq712", "USDJPY"); new FixParser().Invoking(fp => fp.ConvertFixObjectToFixMessage(messageObject)) .ShouldThrow<ArgumentException>() .WithMessage("Unable to convert Fixity.Core.FixMessages.QuoteRequestMessage to FIX message."); }