OLD | NEW |
1 {%- for method in interface.methods %} | 1 {%- for method in interface.methods %} |
2 const int _{{interface|name|lower_camel}}Method{{method|name|upper_camel}}Name =
{{method.ordinal}}; | 2 const int _{{interface|name|lower_camel}}Method{{method|name|upper_camel}}Name =
{{method.ordinal}}; |
3 {%- endfor %} | 3 {%- endfor %} |
4 | 4 |
5 {#--- Interface Enums #} | 5 {#--- Interface Enums #} |
6 {%- from "enum_definition.tmpl" import enum_def -%} | 6 {%- from "enum_definition.tmpl" import enum_def -%} |
7 {%- for enum in interface.enums %} | 7 {%- for enum in interface.enums %} |
8 {{ enum_def(enum, typepkg, package) }} | 8 {{ enum_def(enum, typepkg, package) }} |
9 {%- endfor %} | 9 {%- endfor %} |
10 | 10 |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 [Function responseFactory = null]); | 55 [Function responseFactory = null]); |
56 {%- endif %} | 56 {%- endif %} |
57 {%- endfor %} | 57 {%- endfor %} |
58 | 58 |
59 {#--- Interface Constants #} | 59 {#--- Interface Constants #} |
60 {%- for constant in interface.constants %} | 60 {%- for constant in interface.constants %} |
61 static const {{constant.kind|dart_type}} {{constant|name}} = {{constant.resolv
ed_value}}; | 61 static const {{constant.kind|dart_type}} {{constant|name}} = {{constant.resolv
ed_value}}; |
62 {%- endfor %} | 62 {%- endfor %} |
63 } | 63 } |
64 | 64 |
65 | 65 class _{{interface|name}}ProxyControl |
66 class _{{interface|name}}ProxyControl extends bindings.ProxyMessageHandler | 66 extends bindings.ProxyMessageHandler |
67 implements bindings.ProxyControl { | 67 implements bindings.ProxyControl { |
68 _{{interface|name}}ProxyControl.fromEndpoint( | 68 _{{interface|name}}ProxyControl.fromEndpoint( |
69 core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint); | 69 core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint); |
70 | 70 |
71 _{{interface|name}}ProxyControl.fromHandle( | 71 _{{interface|name}}ProxyControl.fromHandle( |
72 core.MojoHandle handle) : super.fromHandle(handle); | 72 core.MojoHandle handle) : super.fromHandle(handle); |
73 | 73 |
74 _{{interface|name}}ProxyControl.unbound() : super.unbound(); | 74 _{{interface|name}}ProxyControl.unbound() : super.unbound(); |
75 | 75 |
76 {{descpkg}}ServiceDescription get serviceDescription => | 76 {{descpkg}}ServiceDescription get serviceDescription => |
77 new _{{interface|name}}ServiceDescription(); | 77 new _{{interface|name}}ServiceDescription(); |
78 | 78 |
79 String get serviceName => {{interface|name}}.serviceName; | 79 String get serviceName => {{interface|name}}.serviceName; |
80 | 80 |
81 @override | |
82 void handleResponse(bindings.ServiceMessage message) { | 81 void handleResponse(bindings.ServiceMessage message) { |
83 switch (message.header.type) { | 82 switch (message.header.type) { |
84 {%- for method in interface.methods %} | 83 {%- for method in interface.methods %} |
85 {%- if method.response_parameters != None %} | 84 {%- if method.response_parameters != None %} |
86 {%- set response_struct = method.response_param_struct %} | 85 {%- set response_struct = method.response_param_struct %} |
87 case _{{interface|name|lower_camel}}Method{{method|name|upper_camel}}Name: | 86 case _{{interface|name|lower_camel}}Method{{method|name|upper_camel}}Name: |
88 var r = {{response_struct|name}}.deserialize( | 87 var r = {{response_struct|name}}.deserialize( |
89 message.payload); | 88 message.payload); |
90 if (!message.header.hasRequestId) { | 89 if (!message.header.hasRequestId) { |
91 proxyError("Expected a message with a valid request Id."); | 90 proxyError("Expected a message with a valid request Id."); |
(...skipping 21 matching lines...) Expand all Loading... |
113 } | 112 } |
114 } | 113 } |
115 | 114 |
116 @override | 115 @override |
117 String toString() { | 116 String toString() { |
118 var superString = super.toString(); | 117 var superString = super.toString(); |
119 return "_{{interface|name}}ProxyControl($superString)"; | 118 return "_{{interface|name}}ProxyControl($superString)"; |
120 } | 119 } |
121 } | 120 } |
122 | 121 |
123 | 122 class {{interface|name}}Proxy |
124 class {{interface|name}}Proxy extends bindings.Proxy | 123 extends bindings.Proxy |
125 implements {{interface|name}} { | 124 implements {{interface|name}} { |
126 {{interface|name}}Proxy.fromEndpoint( | 125 {{interface|name}}Proxy.fromEndpoint( |
127 core.MojoMessagePipeEndpoint endpoint) | 126 core.MojoMessagePipeEndpoint endpoint) |
128 : super(new _{{interface|name}}ProxyControl.fromEndpoint(endpoint)); | 127 : super(new _{{interface|name}}ProxyControl.fromEndpoint(endpoint)); |
129 | 128 |
130 {{interface|name}}Proxy.fromHandle(core.MojoHandle handle) | 129 {{interface|name}}Proxy.fromHandle(core.MojoHandle handle) |
131 : super(new _{{interface|name}}ProxyControl.fromHandle(handle)); | 130 : super(new _{{interface|name}}ProxyControl.fromHandle(handle)); |
132 | 131 |
133 {{interface|name}}Proxy.unbound() | 132 {{interface|name}}Proxy.unbound() |
134 : super(new _{{interface|name}}ProxyControl.unbound()); | 133 : super(new _{{interface|name}}ProxyControl.unbound()); |
135 | 134 |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 return ctrl.sendMessageWithRequestId( | 178 return ctrl.sendMessageWithRequestId( |
180 params, | 179 params, |
181 _{{interface|name|lower_camel}}Method{{method|name|upper_camel}}Name, | 180 _{{interface|name|lower_camel}}Method{{method|name|upper_camel}}Name, |
182 -1, | 181 -1, |
183 bindings.MessageHeader.kMessageExpectsResponse); | 182 bindings.MessageHeader.kMessageExpectsResponse); |
184 } | 183 } |
185 {%- endif %} | 184 {%- endif %} |
186 {%- endfor %} | 185 {%- endfor %} |
187 } | 186 } |
188 | 187 |
189 | 188 class _{{interface|name}}StubControl |
190 class {{interface|name}}Stub extends bindings.Stub { | 189 extends bindings.StubMessageHandler |
| 190 implements bindings.StubControl<{{interface|name}}> { |
191 {{interface|name}} _impl; | 191 {{interface|name}} _impl; |
192 | 192 |
193 {{interface|name}}Stub.fromEndpoint( | 193 _{{interface|name}}StubControl.fromEndpoint( |
194 core.MojoMessagePipeEndpoint endpoint, [{{interface|name}} impl]) | 194 core.MojoMessagePipeEndpoint endpoint, [{{interface|name}} impl]) |
195 : super.fromEndpoint(endpoint, autoBegin: impl != null) { | 195 : super.fromEndpoint(endpoint, autoBegin: impl != null) { |
196 _impl = impl; | 196 _impl = impl; |
197 } | 197 } |
198 | 198 |
199 {{interface|name}}Stub.fromHandle( | 199 _{{interface|name}}StubControl.fromHandle( |
200 core.MojoHandle handle, [{{interface|name}} impl]) | 200 core.MojoHandle handle, [{{interface|name}} impl]) |
201 : super.fromHandle(handle, autoBegin: impl != null) { | 201 : super.fromHandle(handle, autoBegin: impl != null) { |
202 _impl = impl; | 202 _impl = impl; |
203 } | 203 } |
204 | 204 |
205 {{interface|name}}Stub.unbound([this._impl]) : super.unbound(); | 205 _{{interface|name}}StubControl.unbound([this._impl]) : super.unbound(); |
206 | |
207 static {{interface|name}}Stub newFromEndpoint( | |
208 core.MojoMessagePipeEndpoint endpoint) { | |
209 assert(endpoint.setDescription("For {{interface|name}}Stub")); | |
210 return new {{interface|name}}Stub.fromEndpoint(endpoint); | |
211 } | |
212 | 206 |
213 {% for method in interface.methods %} | 207 {% for method in interface.methods %} |
214 {%- if method.response_parameters != None %} | 208 {%- if method.response_parameters != None %} |
215 {%- set response_struct = method.response_param_struct %} | 209 {%- set response_struct = method.response_param_struct %} |
216 {{response_struct|name}} _{{response_struct|name|lower_camel}}Factory( | 210 {{response_struct|name}} _{{response_struct|name|lower_camel}}Factory( |
217 {%- for param in method.response_parameters -%} | 211 {%- for param in method.response_parameters -%} |
218 {{param.kind|dart_type}} {{param|name}}{% if not loop.last %}, {% endif %} | 212 {{param.kind|dart_type}} {{param|name}}{% if not loop.last %}, {% endif %} |
219 {%- endfor -%} | 213 {%- endfor -%} |
220 ) { | 214 ) { |
221 var result = new {{response_struct|name}}(); | 215 var result = new {{response_struct|name}}(); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 } | 290 } |
297 | 291 |
298 @override | 292 @override |
299 void bind(core.MojoMessagePipeEndpoint endpoint) { | 293 void bind(core.MojoMessagePipeEndpoint endpoint) { |
300 super.bind(endpoint); | 294 super.bind(endpoint); |
301 if (!isOpen && (_impl != null)) { | 295 if (!isOpen && (_impl != null)) { |
302 beginHandlingEvents(); | 296 beginHandlingEvents(); |
303 } | 297 } |
304 } | 298 } |
305 | 299 |
| 300 @override |
306 String toString() { | 301 String toString() { |
307 var superString = super.toString(); | 302 var superString = super.toString(); |
308 return "{{interface|name}}Stub($superString)"; | 303 return "_{{interface|name}}StubControl($superString)"; |
309 } | 304 } |
310 | 305 |
311 int get version => {{interface.version}}; | 306 int get version => {{interface.version}}; |
312 | 307 |
313 static {{descpkg}}ServiceDescription _cachedServiceDescription; | 308 static {{descpkg}}ServiceDescription _cachedServiceDescription; |
314 static {{descpkg}}ServiceDescription get serviceDescription { | 309 static {{descpkg}}ServiceDescription get serviceDescription { |
315 if (_cachedServiceDescription == null) { | 310 if (_cachedServiceDescription == null) { |
316 _cachedServiceDescription = new _{{interface|name}}ServiceDescription(); | 311 _cachedServiceDescription = new _{{interface|name}}ServiceDescription(); |
317 } | 312 } |
318 return _cachedServiceDescription; | 313 return _cachedServiceDescription; |
319 } | 314 } |
320 } | 315 } |
| 316 |
| 317 class {{interface|name}}Stub |
| 318 extends bindings.Stub<{{interface|name}}> |
| 319 implements {{interface|name}} { |
| 320 {{interface|name}}Stub.fromEndpoint( |
| 321 core.MojoMessagePipeEndpoint endpoint, [{{interface|name}} impl]) |
| 322 : super(new _{{interface|name}}StubControl.fromEndpoint(endpoint, impl)); |
| 323 |
| 324 {{interface|name}}Stub.fromHandle( |
| 325 core.MojoHandle handle, [{{interface|name}} impl]) |
| 326 : super(new _{{interface|name}}StubControl.fromHandle(handle, impl)); |
| 327 |
| 328 {{interface|name}}Stub.unbound([{{interface|name}} impl]) |
| 329 : super(new _{{interface|name}}StubControl.unbound(impl)); |
| 330 |
| 331 static {{interface|name}}Stub newFromEndpoint( |
| 332 core.MojoMessagePipeEndpoint endpoint) { |
| 333 assert(endpoint.setDescription("For {{interface|name}}Stub")); |
| 334 return new {{interface|name}}Stub.fromEndpoint(endpoint); |
| 335 } |
| 336 |
| 337 static {{descpkg}}ServiceDescription get serviceDescription => |
| 338 _{{interface|name}}StubControl.serviceDescription; |
| 339 |
| 340 {% for method in interface.methods %} |
| 341 {%- if method.response_parameters == None %} |
| 342 void {{method|name}}( |
| 343 {%- for parameter in method.parameters -%} |
| 344 {{parameter.kind|dart_type}} {{parameter|name}}{% if not loop.last %}, {% en
dif %} |
| 345 {%- endfor -%} |
| 346 ) { |
| 347 return impl.{{method|name}}( |
| 348 {%- for parameter in method.parameters -%} |
| 349 {{parameter|name}}{% if not loop.last %}, {% endif %} |
| 350 {%- endfor -%} |
| 351 ); |
| 352 } |
| 353 {%- else %} |
| 354 dynamic {{method|name}}( |
| 355 {%- for parameter in method.parameters -%} |
| 356 {{parameter.kind|dart_type}} {{parameter|name}}, |
| 357 {%- endfor -%} |
| 358 [Function responseFactory = null]) { |
| 359 return impl.{{method|name}}( |
| 360 {%- for parameter in method.parameters -%} |
| 361 {{parameter|name}}, |
| 362 {%- endfor -%} |
| 363 responseFactory); |
| 364 } |
| 365 {%- endif %} |
| 366 {%- endfor %} |
| 367 } |
OLD | NEW |