コード例 #1
0
    static void Main(string[] args)
    {
        EmailManager _emailManager = new EmailManager();
        SMSManager   _smsmanager   = new SMSManager();

        OrderStatusChangeHandler _handler_one = new OrderStatusChangeHandler(_emailManager.Update);
        OrderStatusChangeHandler _handler_two = new OrderStatusChangeHandler(_smsmanager.Notify);

        Order _order = new Order("ODR100");

        _order.Add_OrderStatusChanged(_handler_one);
        _order.Add_OrderStatusChanged(_handler_two);


        _order.ChangeOrderStatus(OrderStatus.CONFIRMED);
        _order.ChangeOrderStatus(OrderStatus.DISPTACHED);
        _order.ChangeOrderStatus(OrderStatus.DELIVERED);
    }
コード例 #2
0
 public void Remove_OrderStatusChanged(OrderStatusChangeHandler handler)
 {
     this.OrderStatusChanged -= handler;
 }
コード例 #3
0
 public void Add_OrderStatusChanged(OrderStatusChangeHandler handler)
 {
     this.OrderStatusChanged += handler;
 }