public bool push_new_updates()
 {
     Message message = new NewPaymentMessage();
     return _handlers
                 .Where(x => x.can_handle(message))
                 .Select(x => x.handle(message))
                 .All(x => x);
 }
        public bool push_new_updates()
        {
            Message message = new NewPaymentMessage();

            return(_handlers
                   .Where(x => x.can_handle(message))
                   .Select(x => x.handle(message))
                   .All(x => x));
        }
 public bool handle(Message message)
 {
     if (message is NewPaymentMessage)
     {
         NewPaymentMessage paymentMsg = message as NewPaymentMessage;
         _api.send_message("Payment message recieved");
         return(true);
     }
     else
     {
         throw new NotImplementedException("Message type not supported");
     }
 }