| // Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_UI_ANDROID_AUTOFILL_AUTOFILL_DIALOG_RESULT_H_ |
| #define CHROME_BROWSER_UI_ANDROID_AUTOFILL_AUTOFILL_DIALOG_RESULT_H_ |
| |
| #include <jni.h> |
| #include <string> |
| |
| #include "base/memory/scoped_ptr.h" |
| #include "base/strings/string16.h" |
| |
| namespace autofill { |
| namespace wallet { |
| class FullWallet; |
| } |
| } |
| |
| namespace autofill { |
| |
| // A result of the non-cancelled Java-side AutofillDialog invocation. |
| // Passed to the AutofillDialogControllerAndroid in dialogContinue. |
| class AutofillDialogResult { |
| public: |
| // Converts the requested information to wallet::FullWallet. |
| // The dialog stores the requested information in the same format |
| // regardless if the information was obtained from Autofill or Google Wallet. |
| static scoped_ptr<wallet::FullWallet> ConvertFromJava( |
| JNIEnv* env, jobject wallet); |
| |
| // Returns the email address to be associated with this request, |
| // or an empty string. |
| static base::string16 GetWalletEmail(JNIEnv* env, jobject wallet); |
| |
| // Returns the Google Transaction ID to be associated with this request, |
| // or an empty string. |
| static std::string GetWalletGoogleTransactionId(JNIEnv* env, jobject wallet); |
| |
| // Establishes JNI bindings. |
| static bool RegisterAutofillDialogResult(JNIEnv* env); |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(AutofillDialogResult); |
| }; |
| |
| } // namespace autofill |
| |
| #endif // CHROME_BROWSER_UI_ANDROID_AUTOFILL_AUTOFILL_DIALOG_RESULT_H_ |