diff --git a/Swift/Method.swift.twig b/Swift/Method.swift.twig deleted file mode 100644 index f388c4b..0000000 --- a/Swift/Method.swift.twig +++ /dev/null @@ -1,26 +0,0 @@ -{%- import 'utils.twig' as utils -%} - -{%- set bodyParamName = utils.decapitalize(bodyType.type.typeName) -%} -{%- set funcName = utils.decapitalize(name) -%} - -import LeadKit -import RxSwift -import Alamofire - -extension NetworkService { - - /// {{ description }} - func {{ funcName }}({{ bodyParamName }}: {{ bodyType.type.typeName }}, - encoding: ParameterEncoding = URLEncoding.default, - headers: HTTPHeaders? = nil) -> Single<{{ responseType.type.typeName }}> { - - let parameters = ApiRequestParameters(url: "{{ url }}", - method: .post, - parameters: {{ bodyParamName }}.toJSON(), - encoding: encoding, - headers: headers) - - return rxRequest(with: parameters).map { $0.model }.asSingle() - } - -} diff --git a/Swift/Methods.swift.twig b/Swift/Methods.swift.twig new file mode 100644 index 0000000..7b84752 --- /dev/null +++ b/Swift/Methods.swift.twig @@ -0,0 +1,11 @@ +import LeadKit +import RxSwift +import Alamofire + +extension NetworkService { + + {% for method in methods %} + {%- include 'blocks/method/method-func.twig' with { method: method } %} + + {% endfor %} +} diff --git a/Swift/blocks/method/method-func.twig b/Swift/blocks/method/method-func.twig new file mode 100644 index 0000000..0499061 --- /dev/null +++ b/Swift/blocks/method/method-func.twig @@ -0,0 +1,18 @@ +{%- import '../../utils.twig' as utils -%} + +{%- set bodyParamName = utils.decapitalize(method.bodyType.type.typeName) -%} +{%- set funcName = utils.decapitalize(method.name) -%} + + /// {{ description }} + func {{ funcName }}({{ bodyParamName }}: {{ method.bodyType.type.typeName }}, + encoding: ParameterEncoding = URLEncoding.default, + headers: HTTPHeaders? = nil) -> Single<{{ method.responseType.type.typeName }}> { + + let parameters = ApiRequestParameters(url: "{{ method.url }}", + method: .post, + parameters: {{ bodyParamName }}.toJSON(), + encoding: encoding, + headers: headers) + + return rxRequest(with: parameters).map { $0.model }.asSingle() + } \ No newline at end of file