public static void CreateSUT(TestContext context) { var broker1Definition = new BrokerDefinition("Broker 1", 1.49m, new CommissionTreshold(0, 100, 5m)); var broker2Definition = new BrokerDefinition("Broker 2", 1.52m, new CommissionTreshold(0, 40, 3m), new CommissionTreshold(50, 80, 2.5m), new CommissionTreshold(90, 100, 2m)); string baseUrl = "http://localhost:8733/Design_Time_Addresses/"; var broker1 = new BrokerService(broker1Definition); string broker1Url = baseUrl + "broker1"; broker1Host = new ServiceHost(broker1, new Uri(broker1Url)); PrepareServiceHost(broker1Host); broker1Host.Open(); var broker2 = new BrokerService(broker1Definition); string broker2Url = baseUrl + "broker2"; broker2Host = new ServiceHost(broker2, new Uri(broker2Url)); PrepareServiceHost(broker2Host); broker2Host.Open(); server = new InvestobankServer(new TheBestQuotationAlgorithm(), new InvestobankTradingModelInMemory(), (string a) => new BrokerWcfClient(a)); server.RegisterBroker(broker1Definition, broker1Url); server.RegisterBroker(broker2Definition, broker2Url); }
public BrokerService(BrokerDefinition definition) { this.definition = definition; }
public TresholdWithBroker(CommissionTreshold treshold, BrokerDefinition broker) { this.Treshold = treshold; this.Broker = broker; }
public void RegisterBroker(BrokerDefinition brokerDefinition, string endpointUrl) { if(brokerDefinition == null) { throw new ArgumentNullException("Broker definition cannot be null"); } this.brokerDefinitionsById[brokerDefinition.BrokerId] = brokerDefinition; this.brokerClientsById[brokerDefinition.BrokerId] = this.brokerClientFactory(endpointUrl); }