OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_ANDROID_SIGNIN_SIGNIN_MANAGER_ANDROID_H_ | 5 #ifndef CHROME_BROWSER_ANDROID_SIGNIN_SIGNIN_MANAGER_ANDROID_H_ |
6 #define CHROME_BROWSER_ANDROID_SIGNIN_SIGNIN_MANAGER_ANDROID_H_ | 6 #define CHROME_BROWSER_ANDROID_SIGNIN_SIGNIN_MANAGER_ANDROID_H_ |
7 | 7 |
8 #include <jni.h> | 8 #include <jni.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 void OnSignInCompleted(JNIEnv* env, | 50 void OnSignInCompleted(JNIEnv* env, |
51 const base::android::JavaParamRef<jobject>& obj, | 51 const base::android::JavaParamRef<jobject>& obj, |
52 const base::android::JavaParamRef<jstring>& username); | 52 const base::android::JavaParamRef<jstring>& username); |
53 | 53 |
54 void SignOut(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj); | 54 void SignOut(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj); |
55 | 55 |
56 base::android::ScopedJavaLocalRef<jstring> GetManagementDomain( | 56 base::android::ScopedJavaLocalRef<jstring> GetManagementDomain( |
57 JNIEnv* env, | 57 JNIEnv* env, |
58 const base::android::JavaParamRef<jobject>& obj); | 58 const base::android::JavaParamRef<jobject>& obj); |
59 | 59 |
| 60 // Delete all data for this profile. |
60 void WipeProfileData(JNIEnv* env, | 61 void WipeProfileData(JNIEnv* env, |
61 const base::android::JavaParamRef<jobject>& obj, | 62 const base::android::JavaParamRef<jobject>& obj, |
62 const base::android::JavaParamRef<jobject>& hooks); | 63 const base::android::JavaParamRef<jobject>& hooks); |
63 | 64 |
| 65 // Delete service worker caches for google.<eTLD>. |
| 66 void WipeGoogleServiceWorkerCaches( |
| 67 JNIEnv* env, |
| 68 const base::android::JavaParamRef<jobject>& obj, |
| 69 const base::android::JavaParamRef<jobject>& hooks); |
| 70 |
64 void LogInSignedInUser(JNIEnv* env, | 71 void LogInSignedInUser(JNIEnv* env, |
65 const base::android::JavaParamRef<jobject>& obj); | 72 const base::android::JavaParamRef<jobject>& obj); |
66 | 73 |
67 void ClearLastSignedInUser(JNIEnv* env, | 74 void ClearLastSignedInUser(JNIEnv* env, |
68 const base::android::JavaParamRef<jobject>& obj); | 75 const base::android::JavaParamRef<jobject>& obj); |
69 | 76 |
70 jboolean IsSigninAllowedByPolicy( | 77 jboolean IsSigninAllowedByPolicy( |
71 JNIEnv* env, | 78 JNIEnv* env, |
72 const base::android::JavaParamRef<jobject>& obj); | 79 const base::android::JavaParamRef<jobject>& obj); |
73 | 80 |
74 jboolean IsForceSigninEnabled( | 81 jboolean IsForceSigninEnabled( |
75 JNIEnv* env, | 82 JNIEnv* env, |
76 const base::android::JavaParamRef<jobject>& obj); | 83 const base::android::JavaParamRef<jobject>& obj); |
77 | 84 |
78 jboolean IsSignedInOnNative(JNIEnv* env, | 85 jboolean IsSignedInOnNative(JNIEnv* env, |
79 const base::android::JavaParamRef<jobject>& obj); | 86 const base::android::JavaParamRef<jobject>& obj); |
80 | 87 |
81 void ProhibitSignout(JNIEnv* env, | 88 void ProhibitSignout(JNIEnv* env, |
82 const base::android::JavaParamRef<jobject>& obj, | 89 const base::android::JavaParamRef<jobject>& obj, |
83 jboolean prohibit_signout); | 90 jboolean prohibit_signout); |
84 | 91 |
85 // SigninManagerBase::Observer implementation. | 92 // SigninManagerBase::Observer implementation. |
86 void GoogleSigninFailed(const GoogleServiceAuthError& error) override; | 93 void GoogleSigninFailed(const GoogleServiceAuthError& error) override; |
87 void GoogleSigninSucceeded(const std::string& account_id, | 94 void GoogleSigninSucceeded(const std::string& account_id, |
88 const std::string& username) override; | 95 const std::string& username) override; |
89 void GoogleSignedOut(const std::string& account_id, | 96 void GoogleSignedOut(const std::string& account_id, |
90 const std::string& username) override; | 97 const std::string& username) override; |
91 | 98 |
92 private: | 99 private: |
| 100 FRIEND_TEST_ALL_PREFIXES(SigninManagerAndroidTest, |
| 101 DeleteGoogleServiceWorkerCaches); |
| 102 |
93 ~SigninManagerAndroid() override; | 103 ~SigninManagerAndroid() override; |
94 | 104 |
95 void OnPolicyRegisterDone(const std::string& dm_token, | 105 void OnPolicyRegisterDone(const std::string& dm_token, |
96 const std::string& client_id); | 106 const std::string& client_id); |
97 void OnPolicyFetchDone(bool success); | 107 void OnPolicyFetchDone(bool success); |
98 | 108 |
99 void OnBrowsingDataRemoverDone( | 109 void OnBrowsingDataRemoverDone( |
100 const base::android::ScopedJavaGlobalRef<jobject>& callback); | 110 const base::android::ScopedJavaGlobalRef<jobject>& callback); |
101 | 111 |
102 void ClearLastSignedInUser(); | 112 void ClearLastSignedInUser(); |
103 | 113 |
104 void OnSigninAllowedPrefChanged(); | 114 void OnSigninAllowedPrefChanged(); |
105 | 115 |
| 116 static void WipeData(Profile* profile, |
| 117 bool all_data, |
| 118 const base::Closure& callback); |
| 119 |
106 Profile* profile_; | 120 Profile* profile_; |
107 | 121 |
108 // Java-side SigninManager object. | 122 // Java-side SigninManager object. |
109 base::android::ScopedJavaGlobalRef<jobject> java_signin_manager_; | 123 base::android::ScopedJavaGlobalRef<jobject> java_signin_manager_; |
110 | 124 |
111 // CloudPolicy credentials stored during a pending sign-in, awaiting user | 125 // CloudPolicy credentials stored during a pending sign-in, awaiting user |
112 // confirmation before starting to fetch policies. | 126 // confirmation before starting to fetch policies. |
113 std::string dm_token_; | 127 std::string dm_token_; |
114 std::string client_id_; | 128 std::string client_id_; |
115 | 129 |
116 // Username that is pending sign-in. This is used to extract the domain name | 130 // Username that is pending sign-in. This is used to extract the domain name |
117 // for the policy dialog, when |username_| corresponds to a managed account. | 131 // for the policy dialog, when |username_| corresponds to a managed account. |
118 std::string username_; | 132 std::string username_; |
119 | 133 |
120 PrefChangeRegistrar pref_change_registrar_; | 134 PrefChangeRegistrar pref_change_registrar_; |
121 | 135 |
122 base::ThreadChecker thread_checker_; | 136 base::ThreadChecker thread_checker_; |
123 | 137 |
124 base::WeakPtrFactory<SigninManagerAndroid> weak_factory_; | 138 base::WeakPtrFactory<SigninManagerAndroid> weak_factory_; |
125 | 139 |
126 DISALLOW_COPY_AND_ASSIGN(SigninManagerAndroid); | 140 DISALLOW_COPY_AND_ASSIGN(SigninManagerAndroid); |
127 }; | 141 }; |
128 | 142 |
129 #endif // CHROME_BROWSER_ANDROID_SIGNIN_SIGNIN_MANAGER_ANDROID_H_ | 143 #endif // CHROME_BROWSER_ANDROID_SIGNIN_SIGNIN_MANAGER_ANDROID_H_ |
OLD | NEW |