| Index: mojo/public/tools/bindings/generators/js_templates/interface_definition.tmpl
|
| diff --git a/mojo/public/tools/bindings/generators/js_templates/interface_definition.tmpl b/mojo/public/tools/bindings/generators/js_templates/interface_definition.tmpl
|
| index fc77059e76ce136790ada9529ba66248916b9a1e..3a42ae5618afe81fa5144f6486315edca057a71d 100644
|
| --- a/mojo/public/tools/bindings/generators/js_templates/interface_definition.tmpl
|
| +++ b/mojo/public/tools/bindings/generators/js_templates/interface_definition.tmpl
|
| @@ -11,9 +11,6 @@
|
| {%- for parameter in method.parameters -%}
|
| {{parameter.name}}{% if not loop.last %}, {% endif %}
|
| {%- endfor -%}
|
| -{%- if method.response_parameters != None -%}
|
| -, closure
|
| -{%- endif -%}
|
| ) {
|
| var params = new {{interface.name}}_{{method.name}}_Params();
|
| {%- for parameter in method.parameters %}
|
| @@ -28,21 +25,20 @@
|
| var message = builder.finish();
|
| this.receiver_.accept(message);
|
| {%- else %}
|
| - var builder = new codec.MessageWithRequestIDBuilder(
|
| - k{{interface.name}}_{{method.name}}_Name,
|
| - codec.align({{interface.name}}_{{method.name}}_Params.encodedSize),
|
| - codec.kMessageExpectsResponse, 0);
|
| - builder.encodeStruct({{interface.name}}_{{method.name}}_Params, params);
|
| - var message = builder.finish();
|
| - this.receiver_.acceptWithResponder(message, { accept: function(message) {
|
| - var reader = new codec.MessageReader(message);
|
| - var responseParams =
|
| - reader.decodeStruct({{interface.name}}_{{method.name}}_ResponseParams);
|
| - closure(
|
| -{%- for parameter in method.response_parameters -%}
|
| -responseParams.{{parameter.name}}{% if not loop.last %}, {% endif %}
|
| -{%- endfor -%});
|
| - }});
|
| + return new Promise(function(resolve, reject) {
|
| + var builder = new codec.MessageWithRequestIDBuilder(
|
| + k{{interface.name}}_{{method.name}}_Name,
|
| + codec.align({{interface.name}}_{{method.name}}_Params.encodedSize),
|
| + codec.kMessageExpectsResponse, 0);
|
| + builder.encodeStruct({{interface.name}}_{{method.name}}_Params, params);
|
| + var message = builder.finish();
|
| + this.receiver_.acceptWithResponder(message, { accept: function(message) {
|
| + var reader = new codec.MessageReader(message);
|
| + var responseParams =
|
| + reader.decodeStruct({{interface.name}}_{{method.name}}_ResponseParams);
|
| + resolve(responseParams);
|
| + }});
|
| + }.bind(this));
|
| {%- endif %}
|
| };
|
| {%- endfor %}
|
| @@ -79,15 +75,12 @@ params.{{parameter.name}}{% if not loop.last %}, {% endif %}
|
| var params = reader.decodeStruct({{interface.name}}_{{method.name}}_Params);
|
| this.{{method.name|stylize_method}}(
|
| {%- for parameter in method.parameters -%}
|
| -params.{{parameter.name}},
|
| -{%- endfor %} function (
|
| -{%- for parameter in method.response_parameters -%}
|
| -{{parameter.name}}{% if not loop.last %}, {% endif -%}
|
| -{%- endfor -%}) {
|
| +params.{{parameter.name}}{% if not loop.last %}, {% endif -%}
|
| +{%- endfor %}).then(function(response) {
|
| var responseParams =
|
| new {{interface.name}}_{{method.name}}_ResponseParams();
|
| {%- for parameter in method.response_parameters %}
|
| - responseParams.{{parameter.name}} = {{parameter.name}};
|
| + responseParams.{{parameter.name}} = response.{{parameter.name}};
|
| {%- endfor %}
|
| var builder = new codec.MessageWithRequestIDBuilder(
|
| k{{interface.name}}_{{method.name}}_Name,
|
|
|