@@ -10,6 +10,21 @@ import NIO
10
10
import {{spec .title | caseUcfirst }}Models
11
11
12
12
open class {{ service .name | caseUcfirst }}: Service {
13
+ {% if service .globalParams | length %}
14
+ {% for parameter in service .globalParams %}
15
+ var {{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName }}{% if not parameter .required %}?{% endif %}
16
+ {% endfor %}
17
+
18
+
19
+ public init(_ client: Client, {% for parameter in service .globalParams %}_ {{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName }}{% if not parameter .required %}? = nil{% endif %}{% if not loop .last %}, {% endif %}{% endfor %})
20
+ {
21
+ {% for parameter in service .globalParams %}
22
+ self.{{ parameter .name | caseCamel | escapeKeyword }} = {{ parameter .name | caseCamel | escapeKeyword }}
23
+ {% endfor %}
24
+ super.init(client)
25
+ }
26
+
27
+ {% endif %}
13
28
{% for method in service .methods %}
14
29
///
15
30
/// {{ method .title }}
@@ -28,7 +43,7 @@ open class {{ service.name | caseUcfirst }}: Service {
28
43
@available(iOS 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, *)
29
44
{% endif %}
30
45
open func {{ method .name | caseCamel }}(
31
- {% for parameter in method .parameters .all %}
46
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
32
47
{{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName | raw }}{% if not parameter .required %}? = nil{% endif %}{% if not loop .last or ' multipart/form-data' in method .consumes %},{% endif %}
33
48
34
49
{% endfor %}
@@ -40,7 +55,7 @@ open class {{ service.name | caseUcfirst }}: Service {
40
55
{% for parameter in method .parameters .path %}
41
56
path = path.replacingOccurrences(
42
57
of: "{{ ' {' }}{{ parameter .name | caseCamel }}{{ ' }' }}",
43
- with: {% if method .parameters .path %}{{ parameter .name | caseCamel | escapeKeyword }}{% else %}""{% endif %}
58
+ with: {% if method .parameters .path %}{% if parameter . isGlobal %}self.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }}{% else %}""{% endif %}
44
59
45
60
)
46
61
{% endfor %}
@@ -50,7 +65,7 @@ open class {{ service.name | caseUcfirst }}: Service {
50
65
let params: [String: Any?] = [:]
51
66
{% endif %}
52
67
{% for parameter in method .parameters .query | merge(method .parameters .body ) %}
53
- "{{ parameter .name }}": {{ parameter .name | caseCamel | escapeKeyword }}{% if not loop .last or _self.methodNeedsSecurityParameters (method ) %},{% endif %}
68
+ "{{ parameter .name }}": {% if parameter . isGlobal %}self.{% endif %}{ { parameter .name | caseCamel | escapeKeyword }}{% if not loop .last or _self.methodNeedsSecurityParameters (method ) %},{% endif %}
54
69
55
70
{% endfor %}
56
71
{% if _self.methodNeedsSecurityParameters (method ) %}
@@ -138,7 +153,7 @@ open class {{ service.name | caseUcfirst }}: Service {
138
153
{{ method .description | swiftComment }}
139
154
///
140
155
{% endif %}
141
- {% for parameter in method .parameters .all %}
156
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
142
157
/// @param {{ parameter .type | typeName | raw }} {{ parameter .name | caseCamel }}
143
158
{% endfor %}
144
159
/// @throws Exception
@@ -149,7 +164,7 @@ open class {{ service.name | caseUcfirst }}: Service {
149
164
@available(iOS 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0, *)
150
165
{% endif %}
151
166
open func {{ method .name | caseCamel }}(
152
- {% for parameter in method .parameters .all %}
167
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
153
168
{{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .type | typeName | raw }}{% if not parameter .required %}? = nil{% endif %},
154
169
{% endfor %}
155
170
{% if ' multipart/form-data' in method .consumes %}
@@ -160,7 +175,7 @@ open class {{ service.name | caseUcfirst }}: Service {
160
175
Task {
161
176
do {
162
177
let result = try await {{ method .name | caseCamel }}(
163
- {% for parameter in method .parameters .all %}
178
+ {% for parameter in method .parameters .all | filter(( param ) => not param . isGlobal ) %}
164
179
{{ parameter .name | caseCamel | escapeKeyword }}: {{ parameter .name | caseCamel | escapeKeyword }}{% if not loop .last or ' multipart/form-data' in method .consumes %},{% endif %}
165
180
166
181
{% endfor %}
0 commit comments