public UncloseOrderWatcher(OrderContext orderContext, QuotationContext qutationContext, IOrderStore store, IPricePolicyStore pricePolicyStore, OrderServiceBuilder builder, OrderNotifyManager orderNotifyer) { if (orderContext == null) { throw new ArgumentNullException(nameof(orderContext)); } if (qutationContext == null) { throw new ArgumentNullException(nameof(qutationContext)); } if (store == null) { throw new ArgumentNullException(nameof(store)); } if (pricePolicyStore == null) { throw new ArgumentNullException(nameof(pricePolicyStore)); } if (builder == null) { throw new ArgumentNullException(nameof(builder)); } _orderContext = orderContext; _qutationContext = qutationContext; _store = store; _pricePolicyStore = pricePolicyStore; _builder = builder; _orderNotifyer = orderNotifyer; DefaultClosePricePolicy = new RealTimeCloseOpenPricePolicy(); }
/// <summary> /// </summary> /// <param name="orderContext"></param> /// <param name="qutationContext"></param> /// <param name="orderStore"></param> /// <param name="orderPolicyStore"></param> /// <param name="pricePolicyStore"></param> /// <param name="generator"></param> /// <param name="notify"></param> /// <param name="logger"></param> public OrderService(OrderContext orderContext, QuotationContext qutationContext, IOrderStore orderStore, IOrderPolicyStore orderPolicyStore, IPricePolicyStore pricePolicyStore, IOrderIdGenerator generator, IOrderNotify notify, ILogger <OrderService> logger) { if (orderContext == null) { throw new ArgumentNullException(nameof(orderContext)); } if (qutationContext == null) { throw new ArgumentNullException(nameof(qutationContext)); } if (orderStore == null) { throw new ArgumentNullException(nameof(orderStore)); } if (generator == null) { throw new ArgumentNullException(nameof(generator)); } if (notify == null) { throw new ArgumentNullException(nameof(notify)); } if (logger == null) { throw new ArgumentNullException(nameof(logger)); } _orderContext = orderContext; _qutationContext = qutationContext; _orderStore = orderStore; _orderPolicyStore = orderPolicyStore; _pricePolicyStore = pricePolicyStore; _orderIdGenerator = generator; _notify = notify; _logger = logger; DefaultOpenOpenPricePolicy = new RealTimeOpenPricePolicy(); }