Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  nsIPaymentRequestService.idl   Sprache: unbekannt

 
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* 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 "nsIVariant.idl"
#include "nsIPaymentRequest.idl"
#include "nsIPaymentActionResponse.idl"
#include "nsIPaymentAddress.idl"
#include "nsISimpleEnumerator.idl"
#include "nsIPaymentUIService.idl"

/**
 *  nsPaymentRequestService is used to manage the created PaymentRequest in the
 *  chrome process. It is also the IPC agent for payment UI to communicate with
 *  merchant side.
 */
[scriptable, builtinclass, uuid(cccd665f-edf3-41fc-ab9b-fc55b37340aa)]
interface nsIPaymentRequestService : nsISupports
{
  /**
   *  Get the nsIPaymentRequest through the given payment request identifier.
   *  @param aRequestId - the payment request identifier.
   *                      This is an internal id generated by Gecko.
   *  @return           - the requested payment request. null if there is no
   *                      coressponding nsIPaymentRequest for aRequestId.
   */
  nsIPaymentRequest getPaymentRequestById(in AString aRequestId);

  /**
   *  Get the enumerator for all managed nsIPaymentRequests.
   *  @return - an enumerator for all managed nsIPaymentRequests.
   */
  nsISimpleEnumerator enumerate();

  /**
   *  Send the user's response to the merchant.
   *  @param aResponse - the user's response.
   */
  void respondPayment(in nsIPaymentActionResponse aResponse);

  /**
   *  Inform the merchant the shipping address has changed.
   *  @param requestId - the request identifier of the payment request.
   *  @param aAddress - the new payment address.
   */
  void changeShippingAddress(in AString requestId, in nsIPaymentAddress aAddress);

  /**
   *  Inform the merchant the shipping option has changed.
   *  @param requestId - the request identifier of the payment request.
   *  @param option - the shipping option ID string.
   */
  void changeShippingOption(in AString requestId, in AString option);

  /**
   *  Inform the merchant the payer's details changed in the PaymentResponse.
   *  @param requestId - the request identifier of the payment request.
   *  @param aPayerName - the changed payer's name.
   *  @param aPayerEmail - the changed payer's email.
   *  @param aPayerPhone - the changed payer's phone.
   */
  void changePayerDetail(in AString requestId,
                         in AString aPayerName,
                         in AString aPayerEmail,
                         in AString aPayerPhone);

  /**
   *  Inform the merchant the payment method has changed.
   *  @param requestId - the request identifier of the payment request.
   *  @param aMethodName - the changed payment method's name.
   *  @param aMethodDetails - the changed payment method's details.
   */
  void changePaymentMethod(in AString requestId,
                           in AString aMethodName,
                           in nsIMethodChangeDetails aMethodDetails);


  /**
   *  Following APIs are for testing or platform code only. UI implementation
   *  should not use them.
   */
  /**
   *  Clean up the all managed payment requests.
   *  This API is for testing only.
   */
  void cleanup();

  /**
   *  Setup the customized nsIPaymentUIService.
   *  This API is for testing only.
   */
  void setTestingUIService(in nsIPaymentUIService aUIService);
};

%{C++
#define NS_PAYMENT_REQUEST_SERVICE_CONTRACT_ID \
  "@mozilla.org/dom/payments/payment-request-service;1"
%}

[ Dauer der Verarbeitung: 0.16 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge