code: function(requestId, userItemData) {
  		var i, payload = [], item;
  		for (i = 0; i < userItemData.length; i = i + 1) {
  			payload.push(types.INT);
  			payload.push(protocol.encodeInteger(userItemData[i].allowedBufferSize));
  			payload.push(types.DOUBLE);
  			payload.push(protocol.encodeDouble(userItemData[i].allowedMaxItemFreq));
  			payload.push(types.MODE);
  			payload.push(protocol.encodePubModes(userItemData[i].allowedModes));
  		}
  		return protocol.implodeMessage(requestId, metadataMethods.GET_USER_ITEM_DATA,
  			protocol.implodeArray(payload));
  	}
docs: Encodes a successful get user item data reply.
  
  @param {String} requestId the originating request id
  @param {Array} userItemData an array of objects with the following structure:
  {allowedBufferSize: INTEGER, allowedMaxItemFreq: DOUBLE,
  allowedModes: {raw: BOOL, merge: BOOL, distinct: BOOL, command: BOOL}}
  @return {String} the encoded message
  @private