diff --git a/LeadKit/LeadKit/Extensions/Alamofire/AlamofireManager+Extensions.swift b/LeadKit/LeadKit/Extensions/Alamofire/AlamofireManager+Extensions.swift index 5e16ebe3..a638706d 100644 --- a/LeadKit/LeadKit/Extensions/Alamofire/AlamofireManager+Extensions.swift +++ b/LeadKit/LeadKit/Extensions/Alamofire/AlamofireManager+Extensions.swift @@ -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(requestParameters: ApiRequestParameters) -> Observable<(HTTPURLResponse, T)> { + return apiRequest(requestParameters: requestParameters).flatMap { $0.rx.apiResponse() } + } + }