agile_pay.dart 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import 'applepay/apple_pay.dart';
  2. import 'applepay/apple_pay_info.dart';
  3. import 'code/agile_pay_code.dart';
  4. import 'listener/agile_pay_state.dart';
  5. import 'listener/i_agile_pay.dart';
  6. class AgilePay {
  7. static IAgilePay? realPay;
  8. static void check() {
  9. IAgilePay? iAgilePay;
  10. iAgilePay = ApplePay();
  11. realPay = iAgilePay;
  12. iAgilePay.check();
  13. }
  14. static void restore(
  15. {required AgilePaySuccess success,
  16. required AgilePayError payError,
  17. required AgileError error,
  18. AgileRestoreSuccess? restore,
  19. AgilePayBefore? before}) {
  20. IAgilePay? iAgilePay;
  21. iAgilePay = ApplePay();
  22. realPay = iAgilePay;
  23. iAgilePay.setPayListener(AgilePayStateImpl(
  24. paySuccessListener: success,
  25. payErrorListener: payError,
  26. errorListener: error,
  27. restoreSuccessListener: restore,
  28. payBeforeListener: before));
  29. iAgilePay.restore();
  30. }
  31. static void startPay(dynamic payInfo,
  32. {required AgilePaySuccess success,
  33. required AgilePayError payError,
  34. required AgileError error,
  35. AgilePayBefore? before}) {
  36. IAgilePay? iAgilePay;
  37. if (payInfo is ApplePayInfo) {
  38. iAgilePay = ApplePay(payInfo);
  39. }
  40. realPay = iAgilePay;
  41. if (iAgilePay != null) {
  42. iAgilePay.setPayListener(AgilePayStateImpl(
  43. paySuccessListener: success,
  44. payErrorListener: payError,
  45. errorListener: error,
  46. payBeforeListener: before));
  47. iAgilePay.pay();
  48. } else {
  49. payError(AgilePayCode.payCodeNotSupport,
  50. AgilePayCode.getMessageByCode(AgilePayCode.payCodeNotSupport));
  51. }
  52. }
  53. }