I having issues in RxSwift Zip uses ,As i am trying to achieve response of other 2 function and send reqest to 3rd function .i have debuged in xcode and break point not itself came on 3rd function using zip . i have triyed like this
func createOrAlterTable(_ call: CAPPluginCall) -> Observable<[[String:Any]]>{
return Observable.zip(
readTableFromBackend(call), getUserData(call),resultSelector: { value1, value2 in
print("\(value1) \(value2)")
self.readTableFromBackendZipperFun(sqlliteDDLStr: value1, lastFV: value2! as [[String: Any]], call)
}).subscribeOn(MainScheduler.instance)
.subscribe()
.disposed(by: disposeBag)
func readTableFromBackend() -> String {
return "response Table Data"
}
func getUserData() -> String {
return "response user Data"
}
func readTableFromBackendZipperFun(sqlliteDDLStr: value1, lastFV: value2! as [[String: Any]], call)) -> [[String:Any]]
return "JSon response"
Based on the question asked, here's what you are looking for:
func example<T, U, V>(first: () -> Observable<T>, second: () -> Observable<U>, third: @escaping (T, U) -> Observable<V>) -> Observable<V> {
return Observable.zip(first(), second())
.flatMap(third)
}