@@ -8,6 +8,39 @@ type Payload = {
8
8
}
9
9
10
10
export class {{ service .name | caseUcfirst }} extends Service {
11
+ {% if service .globalParams | length %}
12
+ {% for parameter in service .globalParams %}
13
+ {{ parameter .name | caseCamel | escapeKeyword }};
14
+ /**
15
+ * Set {{ parameter .name }}.
16
+ *
17
+ * @param {{ ' {' }}{{ parameter .type | typeName }}{{ ' }' }} {{ parameter .name | caseCamel | escapeKeyword }}
18
+ *
19
+ * @return void
20
+ */
21
+ set{{ parameter .name | caseUcfirst | escapeKeyword }}({{ parameter .name | caseCamel | escapeKeyword }})
22
+ {
23
+ this.{{ parameter .name | caseCamel | escapeKeyword }} = {{ parameter .name | caseCamel | escapeKeyword }};
24
+ }
25
+ /**
26
+ * Get {{ parameter .name }}.
27
+ *
28
+ * @return {{ parameter .type | typeName }}
29
+ */
30
+ get{{ parameter .name | caseUcfirst | escapeKeyword }}({{ parameter .name | caseCamel | escapeKeyword }})
31
+ {
32
+ return this.{{ parameter .name | caseCamel | escapeKeyword }};
33
+ }
34
+ {% endfor %}
35
+ constructor(client, {% for parameter in service .globalParams %} {{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required %} = null{% endif %}{% if not loop .last %}, {% endif %}{% endfor %})
36
+ {
37
+ super(client);
38
+
39
+ {% for parameter in service .globalParams %}
40
+ this.{{ parameter .name | caseCamel | escapeKeyword }} = {{ parameter .name | caseCamel | escapeKeyword }};
41
+ {% endfor %}
42
+ }
43
+ {% endif %}
11
44
{% for method in service .methods %}
12
45
13
46
/**
@@ -17,34 +50,34 @@ export class {{ service.name | caseUcfirst }} extends Service {
17
50
{{ method .description | comment3 }}
18
51
{% endif %}
19
52
*
20
- {% for parameter in method .parameters .all %}
53
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
21
54
* @param {{ ' {' }}{{ parameter .type | getPropertyType(method ) | raw }}{{ ' }' }} {{ parameter .name | caseCamel | escapeKeyword }}
22
55
{% endfor %}
23
56
* @throws {{ ' {' }}{{ spec .title | caseUcfirst }}Exception}
24
57
* @returns {% if method .type == ' webAuth' %}{void|string}{% elseif method .type == ' location' %}{URL}{% else %}{Promise}{% endif %}
25
58
26
59
*/
27
- {% if method .type != ' location' and method .type != ' webAuth' %}async {% endif %}{{ method .name | caseCamel }}{{ method .responseModel | getGenerics(spec ) | raw }}({% for parameter in method .parameters .all %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required %}?{% endif %}: {{ parameter .type | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress = (progress: UploadProgress) => {}{% endif %}): {{ method | getReturn(spec ) | raw }} {
28
- {% for parameter in method .parameters .all %}
60
+ {% if method .type != ' location' and method .type != ' webAuth' %}async {% endif %}{{ method .name | caseCamel }}{{ method .responseModel | getGenerics(spec ) | raw }}({% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}{{ parameter .name | caseCamel | escapeKeyword }}{% if not parameter .required %}?{% endif %}: {{ parameter .type | getPropertyType(method ) | raw }}{% if not loop .last %}, {% endif %}{% endfor %}{% if ' multipart/form-data' in method .consumes %}, onProgress = (progress: UploadProgress) => {}{% endif %}): {{ method | getReturn(spec ) | raw }} {
61
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
29
62
{% if parameter .required %}
30
63
if (typeof {{ parameter .name | caseCamel | escapeKeyword }} === 'undefined') {
31
64
throw new {{spec .title | caseUcfirst }}Exception('Missing required parameter: "{{ parameter .name | caseCamel | escapeKeyword }}"');
32
65
}
33
66
34
67
{% endif %}
35
68
{% endfor %}
36
- let path = '{{ method .path }}'{% for parameter in method .parameters .path %}.replace('{{ ' {' }}{{ parameter .name | caseCamel | escapeKeyword }}{{ ' }' }}', {{ parameter .name | caseCamel | escapeKeyword }}){% endfor %};
69
+ let path = '{{ method .path }}'{% for parameter in method .parameters .path %}.replace('{{ ' {' }}{{ parameter .name | caseCamel | escapeKeyword }}{{ ' }' }}', {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }}){% endfor %};
37
70
let payload: Payload = {};
38
71
39
72
{% for parameter in method .parameters .query %}
40
- if (typeof {{ parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
41
- payload['{{ parameter .name }}'] = {{ parameter .name | caseCamel | escapeKeyword }};
73
+ if (typeof {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
74
+ payload['{{ parameter .name }}'] = {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }};
42
75
}
43
76
44
77
{% endfor %}
45
78
{% for parameter in method .parameters .body %}
46
- if (typeof {{ parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
47
- payload['{{ parameter .name }}'] = {{ parameter .name | caseCamel | escapeKeyword }};
79
+ if (typeof {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }} !== 'undefined') {
80
+ payload['{{ parameter .name }}'] = {% if parameter . isGlobal %}this.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }};
48
81
}
49
82
50
83
{% endfor %}
0 commit comments