Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(76)

Unified Diff: mojo/public/tools/bindings/generators/java_templates/interface_definition.tmpl

Issue 2250183003: Make the fuchsia mojo/public repo the source of truth. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/public/tools/bindings/generators/java_templates/interface_definition.tmpl
diff --git a/mojo/public/tools/bindings/generators/java_templates/interface_definition.tmpl b/mojo/public/tools/bindings/generators/java_templates/interface_definition.tmpl
deleted file mode 100644
index 0aec7fac5d9e80620a47e0e100a760ee564ee8f6..0000000000000000000000000000000000000000
--- a/mojo/public/tools/bindings/generators/java_templates/interface_definition.tmpl
+++ /dev/null
@@ -1,289 +0,0 @@
-{% from "constant_definition.tmpl" import constant_def %}
-{% from "enum_definition.tmpl" import enum_def %}
-{% from "data_types_definition.tmpl" import struct_def %}
-
-{%- macro declare_params(parameters, boxed=false) %}
-{%- for param in parameters -%}
-{{param.kind|java_type(boxed)}} {{param|name}}
-{%- if not loop.last %}, {% endif %}
-{%- endfor %}
-{%- endmacro %}
-
-{% macro declare_request_params(method) %}
-{{declare_params(method.parameters)}}
-{%- if method.response_parameters != None -%}
-{%- if method.parameters %}, {% endif %}
-{{method|interface_response_name}} callback
-{%- endif -%}
-{% endmacro %}
-
-{%- macro declare_callback(method) -%}
-
-interface {{method|interface_response_name}} extends org.chromium.mojo.bindings.Callbacks.Callback{{method.response_parameters|length}}{% if method.response_parameters %}<
-{%- for param in method.response_parameters -%}
-{{param.kind|java_type(True)}}
-{%- if not loop.last %}, {% endif %}
-{%- endfor -%}
->{% endif %} { }
-{%- endmacro -%}
-
-{%- macro run_callback(variable, parameters) -%}
-{%- if parameters -%}
-{%- for param in parameters -%}
-{{variable}}.{{param|name}}
-{%- if not loop.last %}, {% endif %}
-{%- endfor -%}
-{%- endif -%}
-{%- endmacro -%}
-
-{%- macro flags_for_method(method, is_request) -%}
-{{flags(method.response_parameters != None, is_request)}}
-{%- endmacro -%}
-
-{%- macro flags(use_response_flag, is_request) -%}
-{%- if not use_response_flag -%}
-org.chromium.mojo.bindings.MessageHeader.NO_FLAG
-{%- elif is_request: -%}
-org.chromium.mojo.bindings.MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG
-{%- else -%}
-org.chromium.mojo.bindings.MessageHeader.MESSAGE_IS_RESPONSE_FLAG
-{%- endif -%}
-{%- endmacro -%}
-
-{%- macro manager_class(interface, fully_qualified=False) -%}
-{% if fully_qualified %}org.chromium.mojo.bindings.Interface.{% endif %}{% if interface.service_name %}Named{% endif %}Manager<{{interface|name}}, {{interface|name}}.Proxy>
-{%- endmacro -%}
-
-{%- macro manager_def(interface) -%}
-public static final {{manager_class(interface, True)}} MANAGER =
- new {{manager_class(interface, True)}}() {
-{% if interface.service_name %}
-
- public String getName() {
- return "{{interface.service_name}}";
- }
-{% endif %}
-
- public int getVersion() {
- return {{interface.version}};
- }
-
- public Proxy buildProxy(org.chromium.mojo.system.Core core,
- org.chromium.mojo.bindings.MessageReceiverWithResponder messageReceiver) {
- return new Proxy(core, messageReceiver);
- }
-
- public Stub buildStub(org.chromium.mojo.system.Core core, {{interface|name}} impl) {
- return new Stub(core, impl);
- }
-
- public {{interface|name}}[] buildArray(int size) {
- return new {{interface|name}}[size];
- }
-};
-{%- endmacro -%}
-
-{%- macro accept_body(interface, with_response) -%}
-try {
- org.chromium.mojo.bindings.ServiceMessage messageWithHeader =
- message.asServiceMessage();
- org.chromium.mojo.bindings.MessageHeader header = messageWithHeader.getHeader();
- if (!header.validateHeader({{flags(with_response, True)}})) {
- return false;
- }
- switch(header.getType()) {
-{% if with_response %}
- case org.chromium.mojo.bindings.InterfaceControlMessagesConstants.RUN_MESSAGE_ID:
- return org.chromium.mojo.bindings.InterfaceControlMessagesHelper.handleRun(
- getCore(), {{interface|name}}_Internal.MANAGER, messageWithHeader, receiver);
-{% else %}
- case org.chromium.mojo.bindings.InterfaceControlMessagesConstants.RUN_OR_CLOSE_PIPE_MESSAGE_ID:
- return org.chromium.mojo.bindings.InterfaceControlMessagesHelper.handleRunOrClosePipe(
- {{interface|name}}_Internal.MANAGER, messageWithHeader);
-{% endif %}
-{% for method in interface.methods %}
-{% if (with_response and method.response_parameters != None) or
- (not with_response and method.response_parameters == None) %}
-{% set request_struct = method.param_struct %}
-{% if with_response %}
-{% set response_struct = method.response_param_struct %}
-{% endif %}
- case {{method|method_ordinal_name}}: {
-{% if method.parameters %}
- {{request_struct|name}} data =
- {{request_struct|name}}.deserialize(messageWithHeader.getPayload());
-{% else %}
- {{request_struct|name}}.deserialize(messageWithHeader.getPayload());
-{% endif %}
- getImpl().{{method|name}}({{run_callback('data', method.parameters)}}{% if with_response %}{% if method.parameters %}, {% endif %}new {{response_struct|name}}ProxyToResponder(getCore(), receiver, header.getRequestId()){% endif %});
- return true;
- }
-{% endif %}
-{% endfor %}
- default:
- return false;
- }
-} catch (org.chromium.mojo.bindings.DeserializationException e) {
- System.err.println(e.toString());
- return false;
-}
-{%- endmacro -%}
-
-{% macro interface_def(interface) %}
-public interface {{interface|name}} extends org.chromium.mojo.bindings.Interface {
-{% for constant in interface.constants %}
-
- {{constant_def(constant)|indent(4)}}
-{% endfor %}
-{% for enum in interface.enums %}
-
- {{enum_def(enum, false)|indent(4)}}
-{% endfor %}
-
- public interface Proxy extends {{interface|name}}, org.chromium.mojo.bindings.Interface.Proxy {
- }
-
- {{manager_class(interface)}} MANAGER = {{interface|name}}_Internal.MANAGER;
-{% for method in interface.methods %}
-
- void {{method|name}}({{declare_request_params(method)}});
-{% if method.response_parameters != None %}
- {{declare_callback(method)|indent(4)}}
-{% endif %}
-{% endfor %}
-}
-{% endmacro %}
-
-{% macro interface_internal_def(interface) %}
-class {{interface|name}}_Internal {
-
- {{manager_def(interface)|indent(4)}}
-
-{% for method in interface.methods %}
- private static final int {{method|method_ordinal_name}} = {{method.ordinal}};
-{% endfor %}
-
- static final class Proxy extends org.chromium.mojo.bindings.Interface.AbstractProxy implements {{interface|name}}.Proxy {
-
- Proxy(org.chromium.mojo.system.Core core,
- org.chromium.mojo.bindings.MessageReceiverWithResponder messageReceiver) {
- super(core, messageReceiver);
- }
-{% for method in interface.methods %}
-
- @Override
- public void {{method|name}}({{declare_request_params(method)}}) {
-{% set request_struct = method.param_struct %}
- {{request_struct|name}} _message = new {{request_struct|name}}();
-{% for param in method.parameters %}
- _message.{{param|name}} = {{param|name}};
-{% endfor %}
-{% if method.response_parameters != None %}
- getProxyHandler().getMessageReceiver().acceptWithResponder(
- _message.serializeWithHeader(
- getProxyHandler().getCore(),
- new org.chromium.mojo.bindings.MessageHeader(
- {{method|method_ordinal_name}},
- {{flags_for_method(method, True)}},
- 0)),
- new {{method.response_param_struct|name}}ForwardToCallback(callback));
-{% else %}
- getProxyHandler().getMessageReceiver().accept(
- _message.serializeWithHeader(
- getProxyHandler().getCore(),
- new org.chromium.mojo.bindings.MessageHeader({{method|method_ordinal_name}})));
-{% endif %}
- }
-{% endfor %}
-
- }
-
- static final class Stub extends org.chromium.mojo.bindings.Interface.Stub<{{interface|name}}> {
-
- Stub(org.chromium.mojo.system.Core core, {{interface|name}} impl) {
- super(core, impl);
- }
-
- @Override
- public boolean accept(org.chromium.mojo.bindings.Message message) {
- {{accept_body(interface, False)|indent(12)}}
- }
-
- @Override
- public boolean acceptWithResponder(org.chromium.mojo.bindings.Message message, org.chromium.mojo.bindings.MessageReceiver receiver) {
- {{accept_body(interface, True)|indent(12)}}
- }
- }
-{% for method in interface.methods %}
-
- {{ struct_def(method.param_struct, True)|indent(4) }}
-{% if method.response_parameters != None %}
-{% set response_struct = method.response_param_struct %}
-
- {{ struct_def(response_struct, True)|indent(4) }}
-
- static class {{response_struct|name}}ForwardToCallback extends org.chromium.mojo.bindings.SideEffectFreeCloseable
- implements org.chromium.mojo.bindings.MessageReceiver {
- private final {{interface|name}}.{{method|interface_response_name}} mCallback;
-
- {{response_struct|name}}ForwardToCallback({{interface|name}}.{{method|interface_response_name}} callback) {
- this.mCallback = callback;
- }
-
- @Override
- public boolean accept(org.chromium.mojo.bindings.Message message) {
- try {
- org.chromium.mojo.bindings.ServiceMessage messageWithHeader =
- message.asServiceMessage();
- org.chromium.mojo.bindings.MessageHeader header = messageWithHeader.getHeader();
- if (!header.validateHeader({{method|method_ordinal_name}},
- {{flags_for_method(method, False)}})) {
- return false;
- }
-{% if method.response_parameters|length %}
- {{response_struct|name}} response = {{response_struct|name}}.deserialize(messageWithHeader.getPayload());
-{% endif %}
- mCallback.call({{run_callback('response', method.response_parameters)}});
- return true;
- } catch (org.chromium.mojo.bindings.DeserializationException e) {
- return false;
- }
- }
- }
-
- static class {{response_struct|name}}ProxyToResponder implements {{interface|name}}.{{method|interface_response_name}} {
-
- private final org.chromium.mojo.system.Core mCore;
- private final org.chromium.mojo.bindings.MessageReceiver mMessageReceiver;
- private final long mRequestId;
-
- {{response_struct|name}}ProxyToResponder(
- org.chromium.mojo.system.Core core,
- org.chromium.mojo.bindings.MessageReceiver messageReceiver,
- long requestId) {
- mCore = core;
- mMessageReceiver = messageReceiver;
- mRequestId = requestId;
- }
-
- @Override
- public void call({{declare_params(method.response_parameters, true)}}) {
- {{response_struct|name}} _response = new {{response_struct|name}}();
-{% for param in method.response_parameters %}
- _response.{{param|name}} = {{param|name}};
-{% endfor %}
- org.chromium.mojo.bindings.ServiceMessage _message =
- _response.serializeWithHeader(
- mCore,
- new org.chromium.mojo.bindings.MessageHeader(
- {{method|method_ordinal_name}},
- {{flags_for_method(method, False)}},
- mRequestId));
- mMessageReceiver.accept(_message);
- }
- }
-{% endif %}
-{% endfor %}
-
-}
-{% endmacro %}

Powered by Google App Engine
This is Rietveld 408576698