public QueuedHandleOrders(IHandleOrders handler, string queueName)
        {
            _handler = handler;
            _queueName = queueName;

            _orders = new ConcurrentBag<Order>();
            ThreadPool.QueueUserWorkItem(HandleQueuedOrder);
        }
 public Waiter(IHandleOrders handler)
 {
     _handler = handler;
 }
 public AssistantManager(IHandleOrders handler, IPriceTable priceTable)
 {
     _handler = handler;
     _priceTable = priceTable;
 }
 public SecondWaiter(IHandleOrders handler)
 {
     _handler = handler;
 }
 public Cook(IHandleOrders handler, IIngredientsStore store)
 {
     _handler = handler;
     _store = store;
 }
 public Cashier(IHandleOrders handler, IOrderStore orderStore)
 {
     _handler = handler;
     _orderStore = orderStore;
 }
 public void Subscribe(string name, IHandleOrders handler)
 {
     _handlers[name] = handler;
 }