diff options
Diffstat (limited to 'chromium/chrome/browser/signin/identity_services_provider_android.cc')
-rw-r--r-- | chromium/chrome/browser/signin/identity_services_provider_android.cc | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/chromium/chrome/browser/signin/identity_services_provider_android.cc b/chromium/chrome/browser/signin/identity_services_provider_android.cc new file mode 100644 index 00000000000..cb49ede8c7d --- /dev/null +++ b/chromium/chrome/browser/signin/identity_services_provider_android.cc @@ -0,0 +1,39 @@ +// Copyright 2018 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. + +#include "base/android/jni_android.h" +#include "chrome/browser/profiles/profile_android.h" +#include "chrome/browser/signin/identity_manager_factory.h" +#include "chrome/browser/signin/services/android/jni_headers/IdentityServicesProvider_jni.h" +#include "chrome/browser/signin/signin_manager_android_factory.h" +#include "components/signin/public/identity_manager/identity_manager.h" + +using base::android::JavaParamRef; +using base::android::ScopedJavaLocalRef; + +static ScopedJavaLocalRef<jobject> +JNI_IdentityServicesProvider_GetIdentityManager( + JNIEnv* env, + const JavaParamRef<jobject>& j_profile_android) { + Profile* profile = ProfileAndroid::FromProfileAndroid(j_profile_android); + return IdentityManagerFactory::GetForProfile(profile)->GetJavaObject(); +} + +static ScopedJavaLocalRef<jobject> +JNI_IdentityServicesProvider_GetAccountTrackerService( + JNIEnv* env, + const JavaParamRef<jobject>& j_profile_android) { + Profile* profile = ProfileAndroid::FromProfileAndroid(j_profile_android); + signin::IdentityManager* identity_manager = + IdentityManagerFactory::GetForProfile(profile); + return identity_manager->LegacyGetAccountTrackerServiceJavaObject(); +} + +static ScopedJavaLocalRef<jobject> +JNI_IdentityServicesProvider_GetSigninManager( + JNIEnv* env, + const JavaParamRef<jobject>& j_profile_android) { + Profile* profile = ProfileAndroid::FromProfileAndroid(j_profile_android); + return SigninManagerAndroidFactory::GetJavaObjectForProfile(profile); +} |