lib/json-parser.js
function _canFlattenKey(key, requestContext) {
  //debug('_canFlattenKey?', key, requestContext);

  // assume that '*Array' and '*List' elements are arrays.
  if (/Array$/.test(key) || /List$/.test(key)) return false;

  // per-endpoint blacklist of known array keys.
  if (requestContext != null && requestContext.serviceName && requestContext.opType &&
      knownArrayKeysByApiEndpoint[requestContext.serviceName] != null &&
      knownArrayKeysByApiEndpoint[requestContext.serviceName][requestContext.opType] != null &&
      _.contains(knownArrayKeysByApiEndpoint[requestContext.serviceName][requestContext.opType], key)) {
    return false;
  }

  // otherwise assume it can be flattened if there's a single value.
  return true;
}
function _canFlattenKey(key, requestContext) {
  //debug('_canFlattenKey?', key, requestContext);

  // assume that '*Array' and '*List' elements are arrays.
  if (/Array$/.test(key) || /List$/.test(key)) return false;

  // per-endpoint blacklist of known array keys.
  if (requestContext != null && requestContext.serviceName && requestContext.opType &&
      knownArrayKeysByApiEndpoint[requestContext.serviceName] != null &&
      knownArrayKeysByApiEndpoint[requestContext.serviceName][requestContext.opType] != null &&
      _.contains(knownArrayKeysByApiEndpoint[requestContext.serviceName][requestContext.opType], key)) {
    return false;
  }

  // otherwise assume it can be flattened if there's a single value.
  return true;
}
function _canFlattenKey ( key , requestContext ) { //debug('_canFlattenKey?', key, requestContext); // assume that '*Array' and '*List' elements are arrays. if ( / Array$ / . test ( key ) || / List$ / . test ( key ) ) return false ; // per-endpoint blacklist of known array keys. if ( requestContext != null && requestContext . serviceName && requestContext . opType && knownArrayKeysByApiEndpoint [ requestContext . serviceName ] != null && knownArrayKeysByApiEndpoint [ requestContext . serviceName ] [ requestContext . opType ] != null && _ . contains ( knownArrayKeysByApiEndpoint [ requestContext . serviceName ] [ requestContext . opType ] , key ) ) { return false ; } // otherwise assume it can be flattened if there's a single value. return true ; }
/*
helper to filter the keys that get flattened.
/ * helper to filter the keys that get flattened .