docs: function (evt, query, callback) {
      var self = this;
      this.findViewModels(query, function (err, vms) {
        if (err) {
          debug(err);
          return callback(err);
        }
  
        async.map(vms, function (vm, callback) {
          self.handleOne(vm, evt, function (err, notification) {
            if (err) {
              debug(err);
              return callback(err);
            }
  
            callback(null, notification);
          });
        }, function (err, notifications) {
          if (err) {
            debug(err);
            return callback(err);
          }
  
          notifications = _.filter(notifications, function (n) {
            return !!n;
          });
  
          callback(null, notifications);
        });
      });
    }