public JudoPKPaymentAuthorizationViewControllerDelegate(Judo judo, ApplePayModel applePayModel, JudoSuccessCallback success, JudoFailureCallback failure, IApplePayRequest applePayRequest) { _successCallBack = success; _failureCallback = failure; _applePayModel = applePayModel; _judo = judo; _applePayRequest = applePayRequest; }
void PerformApplePayAction(Judo judo, ApplePayModel model, JudoSuccessCallback success, JudoFailureCallback failure, IApplePayRequest applePayRequest) { try { PKPaymentRequest request = GetPKPaymentRequest(model); var rootView = GetCurrentViewController(); var pkDelegate = new JudoPKPaymentAuthorizationViewControllerDelegate(judo, model, success, failure, applePayRequest); PKPaymentAuthorizationViewController pkController = new PKPaymentAuthorizationViewController(request) { Delegate = pkDelegate }; rootView.PresentViewController(pkController, true, null); } catch (Exception e) { var judoError = new JudoError { Exception = e.InnerException }; failure(judoError); } }