• jinho.bang's avatar
    PaymentApp: Introduce PaymentAppDatabase class. · 3b0d3c1f
    jinho.bang authored
    The class is providing APIs to read/write payment app related data(e.g. manifest
    and associated service worker). It can be shared between payment_app_manager.cc
    and payment_app_context.cc.
    
    The payment_app_manager.cc contains a actual implementation of the
    PaymentAppManager interface[1] used on the page or worker.
    Also, the payment_app_context.cc can be used to query all manifests data[2]
    in order to update payment request UI in Chrome layer.
    
    We can summarize this CL as follows.
      1. Rename PaymentAppContext in content/browser/payments to
         PaymentAppContextImpl and then add PaymentAppContext interface in
         content/public to expose some APIs to Chrome layer.
      2. Write PaymentAppDatabase class and then move most of logics to access
         database from PaymentAppManager to the new class.
      3. Add a interface to query all manifests data in Chrome layer but it's not
         implemented yet in this CL. It will be implemented in follow-up CL[2].
    
    [1] https://w3c.github.io/webpayments-payment-apps-api/#payment-app-manager
    [2] https://codereview.chromium.org/2556433002
    
    BUG=661608
    TEST=existing unittests
    
    Review-Url: https://codereview.chromium.org/2560293002
    Cr-Commit-Position: refs/heads/master@{#437855}
    3b0d3c1f
BUILD.gn 80.8 KB