/* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsISupports.idl"
#include "nsIPaymentActionResponse.idl"
/**
* nsIPaymentUIService is the interface used by Gecko to communicate with the
* payment UI .
* In general , the implementation of this interface should be a service that
* manages all payment UI components and receives the requested payment actions
* from Gecko and perform the corresponding UI behavior .
*/
[scriptable, uuid(
01 f8bd55-
9017 -
438 b-
85 ec-
7 c15d2b35cdc)]
interface nsIPaymentUIService : nsISupports
{
/**
* Show the payment UI to users .
* The implementation gets the payment data through nsIPaymentRequestService
* by the passed in requestId , then shows the payment UI and start to interact
* with users .
* According to user ' s action , nsIPaymentRequestService ' s APIs respondPayment ,
* changeShippingAddress , or changeShippingOtpion is possible to called in the
* implementation .
* @ param requestId - the request identify of the payment request .
* Notice that this requestId is an internal request Id
* generated by Gecko
*/
void showPayment(in AString requestId);
/**
* Abort the payment .
* The implementation must abort and close the showing payment UI then call
* nsIPaymentRequestService respondPayment with nsIPaymentAbortActionResponse
* to inform Gecko of the abort status .
* @ param requestId - the request identify of the payment request .
* Notice that this requestId is an internal request Id
* generated by Gecko
*/
void abortPayment(in AString requestId);
/**
* Complete the payment .
* The implementation should close the showing payment UI , then call
* nsIPaymentRequestService respondPayment with nsIPaymentCompleteActionResponse
* to inform Gecko of the complete status .
* @ param requestId - the request identify of the payment request .
* Notice that this requestId is an internal request Id
* generated by Gecko
*/
void completePayment(in AString requestId);
/**
* Update the payment data in the payment UI .
* The implementation should get the updated payment data through the
* nsIPaymentRequestService again , and update the UI .
* @ param requestId - the request identify of the payment request .
* Notice that this requestId is an internal request Id
* generated by Gecko
*/
void updatePayment(in AString requestId);
/**
* Close the payment UI for the specified PaymentRequest .
* The implementation should clean up the PaymentRequest data saved in the UI
* component and close the UI if the specified PaymentRequest is showing to
* the user .
* Notice when the method is called , that means the PaymentRequest is invalid
* in nsIPaymentRequestService .
* @ param requestId - the request identify of the payment request .
* Notice that this requestId is an internal request Id
* generated by Gecko
*/
void closePayment(in AString requestId);
};
%{C++
#define NS_PAYMENT_UI_SERVICE_CONTRACT_ID \
"@mozilla.org/dom/payments/payment-ui-service;1"
%}
Messung V0.5 in Prozent C=95 H=100 G=97
¤ Dauer der Verarbeitung: 0.5 Sekunden
¤
*© Formatika GbR, Deutschland