Line data Source code
1 : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 : /* vim:set ts=2 sw=2 sts=2 et cindent: */
3 : /* This Source Code Form is subject to the terms of the Mozilla Public
4 : * License, v. 2.0. If a copy of the MPL was not distributed with this
5 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 :
7 : #ifndef mozilla_dom_PaymentActionResponse_h
8 : #define mozilla_dom_PaymentActionResponse_h
9 :
10 : #include "nsIPaymentActionResponse.h"
11 :
12 : namespace mozilla {
13 : namespace dom {
14 :
15 : class PaymentRequestParent;
16 :
17 : class PaymentActionResponse : public nsIPaymentActionResponse
18 : {
19 : public:
20 : NS_DECL_ISUPPORTS
21 : NS_DECL_NSIPAYMENTACTIONRESPONSE
22 :
23 : PaymentActionResponse();
24 :
25 : protected:
26 0 : virtual ~PaymentActionResponse() = default;
27 :
28 : nsString mRequestId;
29 : uint32_t mType;
30 : };
31 :
32 : class PaymentCanMakeActionResponse final : public nsIPaymentCanMakeActionResponse
33 : , public PaymentActionResponse
34 : {
35 : public:
36 : NS_DECL_ISUPPORTS_INHERITED
37 0 : NS_FORWARD_NSIPAYMENTACTIONRESPONSE(PaymentActionResponse::)
38 : NS_DECL_NSIPAYMENTCANMAKEACTIONRESPONSE
39 :
40 : PaymentCanMakeActionResponse();
41 :
42 : private:
43 0 : ~PaymentCanMakeActionResponse() = default;
44 :
45 : bool mResult;
46 : };
47 :
48 : class PaymentShowActionResponse final : public nsIPaymentShowActionResponse
49 : , public PaymentActionResponse
50 : {
51 : public:
52 : NS_DECL_ISUPPORTS_INHERITED
53 0 : NS_FORWARD_NSIPAYMENTACTIONRESPONSE(PaymentActionResponse::)
54 : NS_DECL_NSIPAYMENTSHOWACTIONRESPONSE
55 :
56 : PaymentShowActionResponse();
57 :
58 : private:
59 0 : ~PaymentShowActionResponse() = default;
60 :
61 : uint32_t mAcceptStatus;
62 : nsString mMethodName;
63 : nsString mData;
64 : nsString mPayerName;
65 : nsString mPayerEmail;
66 : nsString mPayerPhone;
67 : };
68 :
69 : class PaymentAbortActionResponse final : public nsIPaymentAbortActionResponse
70 : , public PaymentActionResponse
71 : {
72 : public:
73 : NS_DECL_ISUPPORTS_INHERITED
74 0 : NS_FORWARD_NSIPAYMENTACTIONRESPONSE(PaymentActionResponse::)
75 : NS_DECL_NSIPAYMENTABORTACTIONRESPONSE
76 :
77 : PaymentAbortActionResponse();
78 :
79 : private:
80 0 : ~PaymentAbortActionResponse() = default;
81 :
82 : uint32_t mAbortStatus;
83 : };
84 :
85 : class PaymentCompleteActionResponse final : public nsIPaymentCompleteActionResponse
86 : , public PaymentActionResponse
87 : {
88 : public:
89 : NS_DECL_ISUPPORTS_INHERITED
90 0 : NS_FORWARD_NSIPAYMENTACTIONRESPONSE(PaymentActionResponse::)
91 : NS_DECL_NSIPAYMENTCOMPLETEACTIONRESPONSE
92 :
93 : PaymentCompleteActionResponse();
94 :
95 : private:
96 0 : ~PaymentCompleteActionResponse() = default;
97 :
98 : uint32_t mCompleteStatus;
99 : };
100 :
101 : } // end of dom
102 : } // end of namespace mozilla
103 :
104 : #endif
|