code: function(key, callback) {
            if (callback) {
              return body(callback);
            } else {
              return Promise.promisify(body)();
            }
            function body(callback) {
              return self.cacheCollection.findOne({
                name: name,
                key: key
              }, function(err, item) {
                if (err) {
                  return callback(err);
                }
                if (!item) {
                  return callback(null);
                }
                // MongoDB's expireAfterSeconds mechanism isn't instantaneous, so we
                // should still enforce this at get() time
                if (item.expires && (item.expires < (new Date()))) {
                  return callback(null);
                }
                return callback(null, item.value);
              });
            }
          }
docs: Fetch an item from the cache. If the item is in the cache, the callback receives (null, item). If the item is not in the cache the callback receives (null). If an error occurs the callback receives (err). If there is no callback a promise is returned.