function generateCommandOrEvent()

in build-tools/scraper.js [205:248]


function generateCommandOrEvent(commandDef) {
    var className = commandDef.name.charAt(0).toUpperCase() + commandDef.name.slice(1);

    var hasParams = !!commandDef.parameters;
    var hasReturns = !!commandDef.returns;

    var paramsTypeName = className + 'Request';
    var returnsTypeName = className + 'Response';

    var result = '' +
        '@ChromeDevtoolsMethod' + ret() +
        'public JsonRpcResult ' + commandDef.name + '(JsonRpcPeer peer, JSONObject params) {' + ret();

    if (hasParams) {
        result += '' +
            tab(1) + 'final ' + paramsTypeName + ' = mObjectMapper.convertValue' + ret() +
            tab(2) + 'params,' + ret() +
            tab(2) + paramsTypeName + '.type);' + ret(2);
    }

    if (hasReturns) {
        result += '' +
            tab() + 'final ' + returnsTypeName + 'response = new ' + returnsTypeName + '();' + ret() +
            tab() + 'return response;' + ret();
    }

    result += '}' + ret(2);

    if (hasParams) {
        result += generateType({
                id: paramsTypeName,
                properties: commandDef.parameters
            }) + ret(2);
    }

    if (hasReturns) {
        result += generateType({
            id: returnsTypeName,
            properties: commandDef.returns
        });
    }

    return result;
}