| Index: blimp/client/core/session/identity_source.h
|
| diff --git a/blimp/client/core/session/identity_source.h b/blimp/client/core/session/identity_source.h
|
| deleted file mode 100644
|
| index 95ec123156fa720b75a76db7523943ecdcb9b92d..0000000000000000000000000000000000000000
|
| --- a/blimp/client/core/session/identity_source.h
|
| +++ /dev/null
|
| @@ -1,93 +0,0 @@
|
| -// Copyright 2016 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 BLIMP_CLIENT_CORE_SESSION_IDENTITY_SOURCE_H_
|
| -#define BLIMP_CLIENT_CORE_SESSION_IDENTITY_SOURCE_H_
|
| -
|
| -#include <memory>
|
| -#include <string>
|
| -
|
| -#include "base/callback.h"
|
| -#include "base/macros.h"
|
| -#include "blimp/client/public/blimp_client_context_delegate.h"
|
| -#include "google_apis/gaia/identity_provider.h"
|
| -#include "google_apis/gaia/oauth2_token_service.h"
|
| -
|
| -namespace blimp {
|
| -namespace client {
|
| -
|
| -// IdentitySource handles OAuth2 token request and forward user sign in state
|
| -// change to Blimp with ProfileIdentityProvider.
|
| -class IdentitySource : public OAuth2TokenService::Consumer,
|
| - public OAuth2TokenService::Observer,
|
| - public IdentityProvider::Observer {
|
| - public:
|
| - using TokenCallback = base::Callback<void(const std::string&)>;
|
| - using TokenErrorCallback =
|
| - base::Callback<void(const GoogleServiceAuthError&)>;
|
| -
|
| - explicit IdentitySource(std::unique_ptr<IdentityProvider> identity_provider,
|
| - const TokenErrorCallback& error_callback,
|
| - const TokenCallback& callback);
|
| - ~IdentitySource() override;
|
| -
|
| - // Start Blimp authentication by requesting OAuth2 token from Google.
|
| - // Duplicate connect calls during token fetching will be ignored.
|
| - void Connect();
|
| -
|
| - // Returns the account name for the current user.
|
| - std::string GetActiveUsername();
|
| -
|
| - // Add sign in state observer.
|
| - void AddObserver(IdentityProvider::Observer* observer);
|
| -
|
| - // Remove sign in state observer.
|
| - void RemoveObserver(IdentityProvider::Observer* observer);
|
| -
|
| - // OAuth2TokenService::Consumer implementation.
|
| - void OnGetTokenSuccess(const OAuth2TokenService::Request* request,
|
| - const std::string& access_token,
|
| - const base::Time& expiration_time) override;
|
| - void OnGetTokenFailure(const OAuth2TokenService::Request* request,
|
| - const GoogleServiceAuthError& error) override;
|
| -
|
| - // OAuth2TokenService::Observer implementation.
|
| - void OnRefreshTokenAvailable(const std::string& account_id) override;
|
| -
|
| - protected:
|
| - // Provide OAuth2 token service and listen to Google account sign in state,
|
| - // protected for testing.
|
| - std::unique_ptr<IdentityProvider> identity_provider_;
|
| -
|
| - private:
|
| - // Fetch OAuth token.
|
| - void FetchAuthToken();
|
| -
|
| - // OAuth2 token request. The request is created when we start to fetch the
|
| - // access token in OAuth2TokenService::StartRequest, and destroyed when
|
| - // OAuth2TokenService::Consumer callback get called.
|
| - std::unique_ptr<OAuth2TokenService::Request> token_request_;
|
| -
|
| - TokenErrorCallback error_callback_;
|
| -
|
| - // Callback after OAuth2 token is fetched.
|
| - TokenCallback token_callback_;
|
| -
|
| - // If we are fetching OAuth2 token. Connect call during token fetching will
|
| - // be ignored.
|
| - bool is_fetching_token_;
|
| -
|
| - // Account id of current active user, used during token request.
|
| - std::string account_id_;
|
| -
|
| - // Current retry count due to request cancellation.
|
| - int retry_times_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(IdentitySource);
|
| -};
|
| -
|
| -} // namespace client
|
| -} // namespace blimp
|
| -
|
| -#endif // BLIMP_CLIENT_CORE_SESSION_IDENTITY_SOURCE_H_
|
|
|