forked from lkuczborski/SwiftMoyaCodeGenerator
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathmoya.mustache
More file actions
62 lines (51 loc) · 1.66 KB
/
Copy pathmoya.mustache
File metadata and controls
62 lines (51 loc) · 1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
//
// {{{apiName}}}API.swift
//
// Generated using MoyaPaw Export https://github.com/narlei/SwiftMoyaCodeGenerator.git
import Moya
{{{alll}}}
public enum {{{apiName}}}API {
case {{{requestName}}}{{#queryParamsType}}({{{queryParamsType}}}){{/queryParamsType}}
}
extension {{{apiName}}}API: TargetType {
public var baseURL: URL { return URL(string: "{{{baseURL}}}")! }
public var path: String {
switch self {
case .{{{requestName}}}:
return "{{{pathExtension}}}"
}
}
public var method: Moya.Method {
switch self {
case .{{{requestName}}}:
return .{{{requestMethod}}}
}
}
public var task: Task {
switch self {
{{#queryParams}}
case .{{{requestName}}}({{{queryParams}}}):
return {{#queryDictString}}.requestParameters(parameters: [{{{queryDictString}}}], encoding: URLEncoding.default){{/queryDictString}}
{{/queryParams}}
{{#jsonBodyParams}}
case .{{{requestName}}}({{{jsonBodyParams}}}):
return {{#jsonBodyDictString}}.requestParameters(parameters: [{{{jsonBodyDictString}}}], encoding: URLEncoding.default){{/jsonBodyDictString}}
{{/jsonBodyParams}}
{{^queryParams}}
{{^jsonBodyParams}}
case .{{{requestName}}}:
return .requestPlain
{{/jsonBodyParams}}
{{/queryParams}}
}
}
public var headers: [String: String]? {
return [{{#headers}}{{{headers}}}{{/headers}}]
}
public var sampleData: Data {
switch self {
case .{{{requestName}}}:
return "{}".data(using: String.Encoding.utf8)!
}
}
}