1 {%- for method in interface.methods %}
2 var k{{interface.name}}_{{method.name}}_Name = {{method.ordinal}};
5 function {{interface.name}}Proxy(receiver) {
6 this.receiver_ = receiver;
9 {%- for method in interface.methods %}
10 {{interface.name}}Proxy.prototype.{{method.name|stylize_method}} = function(
11 {%- for parameter in method.parameters -%}
12 {{parameter.name}}{% if not loop.last %}, {% endif %}
14 var params = new {{interface.name}}_{{method.name}}_Params();
15 {%- for parameter in method.parameters %}
16 params.{{parameter.name}} = {{parameter.name}};
19 var builder = new codec.MessageBuilder(
20 k{{interface.name}}_{{method.name}}_Name,
21 codec.align({{interface.name}}_{{method.name}}_Params.encodedSize));
22 builder.encodeStruct({{interface.name}}_{{method.name}}_Params, params);
23 var message = builder.finish();
24 this.receiver_.accept(message);
28 function {{interface.name}}Stub() {
31 {{interface.name}}Stub.prototype.accept = function(message) {
32 var reader = new codec.MessageReader(message);
33 switch (reader.messageName) {
34 {%- for method in interface.methods %}
35 case k{{interface.name}}_{{method.name}}_Name:
36 var params = reader.decodeStruct({{interface.name}}_{{method.name}}_Params);
37 this.{{method.name|stylize_method}}(
38 {%- for parameter in method.parameters -%}
39 params.{{parameter.name}}{% if not loop.last %}, {% endif %}
49 {%- from "enum_definition.tmpl" import enum_def -%}
50 {% for enum in interface.enums %}
51 {{ enum_def("%sProxy.%s"|format(interface.name, enum.name), enum)}}
52 {{interface.name}}Stub.{{enum.name}} = {{interface.name}}Proxy.{{enum.name}};