| 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_SYNC_PROFILE_SYNC_SERVICE_ANDROID_H_ | 5 #ifndef CHROME_BROWSER_SYNC_PROFILE_SYNC_SERVICE_ANDROID_H_ |
| 6 #define CHROME_BROWSER_SYNC_PROFILE_SYNC_SERVICE_ANDROID_H_ | 6 #define CHROME_BROWSER_SYNC_PROFILE_SYNC_SERVICE_ANDROID_H_ |
| 7 | 7 |
| 8 #include <jni.h> | 8 #include <jni.h> |
| 9 #include <map> | 9 #include <map> |
| 10 | 10 |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 GetSyncEnterCustomPassphraseBodyText( | 135 GetSyncEnterCustomPassphraseBodyText( |
| 136 JNIEnv* env, jobject); | 136 JNIEnv* env, jobject); |
| 137 | 137 |
| 138 // Returns true if sync has been migrated. | 138 // Returns true if sync has been migrated. |
| 139 jboolean IsSyncKeystoreMigrationDone(JNIEnv* env, jobject obj); | 139 jboolean IsSyncKeystoreMigrationDone(JNIEnv* env, jobject obj); |
| 140 | 140 |
| 141 // Get the set of active data types. These are the types currently being | 141 // Get the set of active data types. These are the types currently being |
| 142 // synced. Note that control types are always included here. | 142 // synced. Note that control types are always included here. |
| 143 // Returns a bit map of the values from | 143 // Returns a bit map of the values from |
| 144 // profile_sync_service_android.cc. | 144 // profile_sync_service_android.cc. |
| 145 jlong GetActiveDataTypes(JNIEnv* env, jobject obj); | 145 base::android::ScopedJavaLocalRef<jintArray> GetActiveDataTypes(JNIEnv* env, |
| 146 jobject obj); |
| 146 | 147 |
| 147 // Get the set of preferred data types. These are the types that the user | 148 // Get the set of preferred data types. These are the types that the user |
| 148 // has requested be synced. | 149 // has requested be synced. |
| 149 // Returns a bit map of the values from | 150 // Returns a bit map of the values from |
| 150 // profile_sync_service_android.cc. | 151 // profile_sync_service_android.cc. |
| 151 jlong GetPreferredDataTypes(JNIEnv* env, jobject obj); | 152 base::android::ScopedJavaLocalRef<jintArray> GetPreferredDataTypes( |
| 153 JNIEnv* env, |
| 154 jobject obj); |
| 152 | 155 |
| 153 // Enables the passed data types. | 156 // Enables the passed data types. |
| 154 // If |sync_everything| is true, then all data types are enabled and the | 157 // If |sync_everything| is true, then all data types are enabled and the |
| 155 // contents of |model_type_selection| is | 158 // contents of |model_type_selection| is |
| 156 // ignored. | 159 // ignored. |
| 157 // Otherwise, the values of |model_type_selection| must contain a bit map of | 160 // Otherwise, the values of |model_type_selection| must contain a bit map of |
| 158 // values from profile_sync_service_android.cc. | 161 // values from profile_sync_service_android.cc. |
| 159 void SetPreferredDataTypes(JNIEnv* env, | 162 void SetPreferredDataTypes(JNIEnv* env, |
| 160 jobject obj, | 163 jobject obj, |
| 161 jboolean sync_everything, | 164 jboolean sync_everything, |
| 162 jlong model_type_selection); | 165 jintArray model_type_selection); |
| 163 | 166 |
| 164 // Tells sync that we're currently configuring so no data types should be | 167 // Tells sync that we're currently configuring so no data types should be |
| 165 // downloaded yet. | 168 // downloaded yet. |
| 166 void SetSetupInProgress(JNIEnv* env, jobject obj, jboolean in_progress); | 169 void SetSetupInProgress(JNIEnv* env, jobject obj, jboolean in_progress); |
| 167 | 170 |
| 168 // Tells sync that sync setup is complete so we can start syncing now. | 171 // Tells sync that sync setup is complete so we can start syncing now. |
| 169 void SetSyncSetupCompleted(JNIEnv* env, jobject obj); | 172 void SetSyncSetupCompleted(JNIEnv* env, jobject obj); |
| 170 | 173 |
| 171 // Returns true if sync setup has been completed. | 174 // Returns true if sync setup has been completed. |
| 172 jboolean HasSyncSetupCompleted(JNIEnv* env, jobject obj); | 175 jboolean HasSyncSetupCompleted(JNIEnv* env, jobject obj); |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 207 // the internal value of base::Time. | 210 // the internal value of base::Time. |
| 208 jlong GetLastSyncedTimeForTest(JNIEnv* env, jobject obj); | 211 jlong GetLastSyncedTimeForTest(JNIEnv* env, jobject obj); |
| 209 | 212 |
| 210 // Overrides ProfileSyncService's NetworkResources object. This is used to | 213 // Overrides ProfileSyncService's NetworkResources object. This is used to |
| 211 // set up the Sync FakeServer for testing. | 214 // set up the Sync FakeServer for testing. |
| 212 void OverrideNetworkResourcesForTest(JNIEnv* env, | 215 void OverrideNetworkResourcesForTest(JNIEnv* env, |
| 213 jobject obj, | 216 jobject obj, |
| 214 jlong network_resources); | 217 jlong network_resources); |
| 215 | 218 |
| 216 // Public for tests. | 219 // Public for tests. |
| 217 static jlong ModelTypeSetToSelection(syncer::ModelTypeSet model_types); | 220 static base::android::ScopedJavaLocalRef<jintArray> |
| 218 | 221 ModelTypeSetToJavaIntArray(JNIEnv* env, syncer::ModelTypeSet model_types); |
| 219 // Converts a bitmap of model types to a set of Java ModelTypes, and returns | |
| 220 // their string descriptions separated by commas. | |
| 221 static std::string ModelTypeSelectionToStringForTest( | |
| 222 jlong model_type_selection); | |
| 223 | 222 |
| 224 static ProfileSyncServiceAndroid* GetProfileSyncServiceAndroid(); | 223 static ProfileSyncServiceAndroid* GetProfileSyncServiceAndroid(); |
| 225 | 224 |
| 226 // Registers the ProfileSyncServiceAndroid's native methods through JNI. | 225 // Registers the ProfileSyncServiceAndroid's native methods through JNI. |
| 227 static bool Register(JNIEnv* env); | 226 static bool Register(JNIEnv* env); |
| 228 | 227 |
| 229 private: | 228 private: |
| 230 typedef std::map<invalidation::ObjectId, | 229 typedef std::map<invalidation::ObjectId, |
| 231 int64, | 230 int64, |
| 232 syncer::ObjectIdLessThan> ObjectIdVersionMap; | 231 syncer::ObjectIdLessThan> ObjectIdVersionMap; |
| 233 | 232 |
| 234 ~ProfileSyncServiceAndroid() override; | 233 ~ProfileSyncServiceAndroid() override; |
| 235 // Remove observers to profile sync service. | 234 // Remove observers to profile sync service. |
| 236 void RemoveObserver(); | 235 void RemoveObserver(); |
| 237 | 236 |
| 238 Profile* profile_; | 237 Profile* profile_; |
| 239 ProfileSyncService* sync_service_; | 238 ProfileSyncService* sync_service_; |
| 240 // The class that handles getting, setting, and persisting sync | 239 // The class that handles getting, setting, and persisting sync |
| 241 // preferences. | 240 // preferences. |
| 242 scoped_ptr<sync_driver::SyncPrefs> sync_prefs_; | 241 scoped_ptr<sync_driver::SyncPrefs> sync_prefs_; |
| 243 | 242 |
| 244 // Java-side ProfileSyncService object. | 243 // Java-side ProfileSyncService object. |
| 245 JavaObjectWeakGlobalRef weak_java_profile_sync_service_; | 244 JavaObjectWeakGlobalRef weak_java_profile_sync_service_; |
| 246 | 245 |
| 247 DISALLOW_COPY_AND_ASSIGN(ProfileSyncServiceAndroid); | 246 DISALLOW_COPY_AND_ASSIGN(ProfileSyncServiceAndroid); |
| 248 }; | 247 }; |
| 249 | 248 |
| 250 #endif // CHROME_BROWSER_SYNC_PROFILE_SYNC_SERVICE_ANDROID_H_ | 249 #endif // CHROME_BROWSER_SYNC_PROFILE_SYNC_SERVICE_ANDROID_H_ |
| OLD | NEW |