Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / signin / fake_profile_oauth2_token_service_wrapper.h
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_SIGNIN_FAKE_PROFILE_OAUTH2_TOKEN_SERVICE_WRAPPER_H_
6 #define CHROME_BROWSER_SIGNIN_FAKE_PROFILE_OAUTH2_TOKEN_SERVICE_WRAPPER_H_
7
8 #include "chrome/browser/signin/fake_profile_oauth2_token_service.h"
9 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h"
10
11 class Profile;
12
13 // A wrapper around FakeProfileOAuth2TokenService to be able to use it as a
14 // BCKS.
15 class FakeProfileOAuth2TokenServiceWrapper
16     : public ProfileOAuth2TokenServiceWrapper {
17  public:
18   // Helper function to be used with
19   // BrowserContextKeyedService::SetTestingFactory().
20   static BrowserContextKeyedService* Build(content::BrowserContext* context);
21
22   // Helper function to be used with
23   // BrowserContextKeyedService::SetTestingFactory() that creates a
24   // FakeProfileOAuth2TokenService object that posts fetch responses on the
25   // current message loop.
26   static BrowserContextKeyedService* BuildAutoIssuingTokenService(
27       content::BrowserContext* context);
28
29   FakeProfileOAuth2TokenServiceWrapper(Profile* profile,
30                                        bool auto_issue_tokens);
31   virtual ~FakeProfileOAuth2TokenServiceWrapper();
32
33   // ProfileOAuth2TokenServiceWrapper implementation:
34   virtual ProfileOAuth2TokenService* GetProfileOAuth2TokenService() OVERRIDE;
35
36  private:
37   FakeProfileOAuth2TokenService service_;
38 };
39
40 #endif  // CHROME_BROWSER_SIGNIN_FAKE_PROFILE_OAUTH2_TOKEN_SERVICE_WRAPPER_H_