-
Notifications
You must be signed in to change notification settings - Fork 49
/
Copy pathenum.j2
21 lines (19 loc) · 1.28 KB
/
enum.j2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public enum {{ name.upper_camel_case }} {
{% for value in values %}
{{ value.name.uppercase }} {
@Override
protected {{ plugin_name.upper_camel_case }}Proto.{% if parent_struct is not none %}{{ parent_struct.upper_camel_case }}.{% endif %}{{ name.upper_camel_case }} rpc{{ name.upper_camel_case }}() {
return {{ plugin_name.upper_camel_case}}Proto.{% if parent_struct is not none %}{{ parent_struct.upper_camel_case }}.{% endif %}{{ name.upper_camel_case }}.{{ name.uppercase }}_{{ value.name.uppercase }};
}
}{{ ", " if not loop.last }}
{%- endfor %};
protected static {{ name.upper_camel_case }} translateFromRpc({{ plugin_name.upper_camel_case }}Proto.{% if parent_struct is not none %}{{ parent_struct.upper_camel_case }}.{% endif %}{{ name.upper_camel_case }} rpc{{ name.upper_camel_case }}) {
switch (rpc{{ name.upper_camel_case }}) {
{%- for value in values %}
case {{ name.uppercase }}_{{ value.name.uppercase }}: {{ "default: " if loop.first }}
return {{ name.upper_camel_case }}.{{ value.name.uppercase }};
{%- endfor %}
}
}
protected abstract {{ plugin_name.upper_camel_case }}Proto.{% if parent_struct is not none %}{{ parent_struct.upper_camel_case }}.{% endif %}{{ name.upper_camel_case }} rpc{{ name.upper_camel_case }}();
}