Chromium Code Reviews| Index: ios/chrome/browser/signin/signin_util.mm |
| diff --git a/ios/chrome/browser/signin/signin_util.mm b/ios/chrome/browser/signin/signin_util.mm |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..73b489e233934d002803d0a5ace4364c9db96104 |
| --- /dev/null |
| +++ b/ios/chrome/browser/signin/signin_util.mm |
| @@ -0,0 +1,35 @@ |
| +// 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. |
| + |
| +#include "ios/chrome/browser/signin/signin_util.h" |
| + |
| +#include "base/strings/sys_string_conversions.h" |
| +#include "google_apis/gaia/gaia_auth_util.h" |
| +#import "ios/public/provider/chrome/browser/signin/chrome_identity.h" |
| +#include "ios/public/provider/chrome/browser/signin/signin_error_provider.h" |
| + |
| +NSArray* GetScopeArray(const std::set<std::string>& scopes) { |
| + NSMutableArray* scopes_array = [[[NSMutableArray alloc] init] autorelease]; |
| + for (std::set<std::string>::iterator it = scopes.begin(); it != scopes.end(); |
|
sdefresne
2015/08/04 08:46:17
nit: use c++11 for loop
for (const auto& scope :
|
| + ++it) { |
| + [scopes_array addObject:base::SysUTF8ToNSString(*it)]; |
| + } |
| + return scopes_array; |
| +} |
| + |
| +std::string GetCanonicalizedEmailForIdentity(ChromeIdentity* identity) { |
| + NSString* nsEmail = [identity userEmail]; |
| + if (!nsEmail) |
| + return ""; |
|
sdefresne
2015/08/04 08:46:17
return std::string();
|
| + std::string email = base::SysNSStringToUTF8(nsEmail); |
| + return gaia::CanonicalizeEmail(gaia::SanitizeEmail(email)); |
| +} |
| + |
| +bool ShouldHandleSigninError(NSError* error) { |
| + ios::SigninErrorProvider* provider = ios::GetSigninErrorProvider(); |
| + return ![provider->GetSigninErrorDomain() isEqualToString:error.domain] || |
| + (error.code != provider->GetCode(ios::SigninError::CANCELED) && |
| + error.code != |
| + provider->GetCode(ios::SigninError::HANDLED_INTERNALLY)); |
| +} |