Merge pull request #71 from TouchInstinct/feature/status_codes
Added additional valid status codes parameter to request methods
This commit is contained in:
commit
ee4e43f47a
|
|
@ -7,7 +7,7 @@ import Alamofire
|
|||
|
||||
protocol {{ protocolName }} {
|
||||
|
||||
func apiRequest<T: Decodable>(with parametersSingle: Single<ApiRequestParameters>, decoder: JSONDecoder) -> Single<T>
|
||||
func apiRequest<T: Decodable>(with parametersSingle: Single<ApiRequestParameters>, additionalValidStatusCodes: Set<Int>, decoder: JSONDecoder) -> Single<T>
|
||||
func deferredApiRequestParameters(relativeUrl: String,
|
||||
method: HTTPMethod,
|
||||
parameters: Parameters?,
|
||||
|
|
@ -27,9 +27,9 @@ class {{ serviceName }}: NetworkService, {{ protocolName }} {
|
|||
self.init(configuration: NetworkServiceConfiguration(baseUrl: {{ serviceName }}.apiBaseUrl))
|
||||
}
|
||||
|
||||
func apiRequest<T: Decodable>(with parametersSingle: Single<ApiRequestParameters>, decoder: JSONDecoder = JSONDecoder()) -> Single<T> {
|
||||
func apiRequest<T: Decodable>(with parametersSingle: Single<ApiRequestParameters>, additionalValidStatusCodes: Set<Int> = [], decoder: JSONDecoder = JSONDecoder()) -> Single<T> {
|
||||
return parametersSingle.flatMap {
|
||||
self.rxRequest(with: $0, decoder: decoder).map { $0.model }.asSingle()
|
||||
self.rxRequest(with: $0, additionalValidStatusCodes: additionalValidStatusCodes, decoder: decoder).map { $0.model }.asSingle()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -9,4 +9,4 @@
|
|||
|
||||
{%- set funcName = utils.decapitalize(method.name) -%}
|
||||
|
||||
{{ isStatic ? "static " : "" }}func {{ funcName }}({%- if hasBody -%}{{ bodyParamName }}: {{ bodyTypeName }},{{ " " }}{%- endif -%}requestEncoding: ParameterEncoding?, requestHeaders: HTTPHeaders?) -> Single<{{ method.responseType.type.typeName }}>
|
||||
{{ isStatic ? "static " : "" }}func {{ funcName }}({%- if hasBody -%}{{ bodyParamName }}: {{ bodyTypeName }},{{ " " }}{%- endif -%}requestEncoding: ParameterEncoding?, requestHeaders: HTTPHeaders?, additionalValidStatusCodes: Set<Int>) -> Single<{{ method.responseType.type.typeName }}>
|
||||
|
|
|
|||
|
|
@ -13,7 +13,8 @@
|
|||
/// {{ method.description }}
|
||||
{{ isStatic ? "static " : "" }}func {{ funcName }}({%- if hasBody -%}{{ bodyParamName }}: {{ bodyTypeName }},{{ "\n " }}{%- endif -%}
|
||||
requestEncoding: ParameterEncoding? = nil,
|
||||
requestHeaders: HTTPHeaders? = nil) -> Single<{{ method.responseType.type.typeName }}> {
|
||||
requestHeaders: HTTPHeaders? = nil,
|
||||
additionalValidStatusCodes: Set<Int> = []) -> Single<{{ method.responseType.type.typeName }}> {
|
||||
|
||||
{% if isStatic -%}
|
||||
return shared.{{ funcName }}({%- if hasBody -%}{{ bodyParamName }}: {{ bodyParamName }},{{ "\n " }}{%- endif -%}
|
||||
|
|
@ -26,7 +27,7 @@
|
|||
requestEncoding: requestEncoding,
|
||||
requestHeaders: requestHeaders)
|
||||
|
||||
return apiRequest(with: parameters, decoder: JSONDecoder())
|
||||
return apiRequest(with: parameters, additionalValidStatusCodes: additionalValidStatusCodes, decoder: JSONDecoder())
|
||||
|
||||
{%- endif %}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue