add responseModel method to SessionManager

This commit is contained in:
Ivan Smolin 2016-10-12 13:03:50 +03:00
parent effcc01b27
commit 1cd7967d0c
1 changed files with 13 additions and 1 deletions

View File

@ -9,13 +9,14 @@
import Alamofire
import RxSwift
import RxAlamofire
import ObjectMapper
public extension Alamofire.SessionManager {
/**
method which executes request with given api parameters
- parameter apiParameters: api parameters to pass Alamofire
- parameter requestParameters: api parameters to pass Alamofire
- returns: Observable with request
*/
@ -27,4 +28,15 @@ public extension Alamofire.SessionManager {
headers: requestParameters.headers)
}
/**
method which executes request and serialize response into target object
- parameter requestParameters: api parameters to pass Alamofire
- returns: Observable with HTTP URL Response and target object
*/
func responseModel<T: ImmutableMappable>(requestParameters: ApiRequestParameters) -> Observable<(HTTPURLResponse, T)> {
return apiRequest(requestParameters: requestParameters).flatMap { $0.rx.apiResponse() }
}
}