public ITransport CompositeConnect(Uri location)
{
Tracer.Debug("MockTransportFactory: Create new Transport with options: " + location.Query);
// Extract query parameters from broker Uri
StringDictionary map = URISupport.ParseQuery(location.Query);
// Set transport. properties on this (the factory)
URISupport.SetProperties(this, map, "transport.");
if(this.FailOnCreate == true)
{
throw new IOException("Failed to Create new MockTransport.");
}
// Create the Mock Transport
MockTransport transport = new MockTransport(location);
transport.FailOnReceiveMessage = this.FailOnReceiveMessage;
transport.NumReceivedMessagesBeforeFail = this.NumReceivedMessagesBeforeFail;
transport.FailOnSendMessage = this.FailOnSendMessage;
transport.NumSentMessagesBeforeFail = this.NumSentMessagesBeforeFail;
transport.Name = this.Name;
transport.RespondToMessages = this.respondToMessages;
transport.NumMessagesToRespondTo = this.numMessagesToRespondTo;
return transport;
}