- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / login / profile_auth_data.h
1 // Copyright (c) 2012 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_CHROMEOS_LOGIN_PROFILE_AUTH_DATA_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_PROFILE_AUTH_DATA_H_
7
8 #include <string>
9 #include "base/callback.h"
10
11 class Profile;
12
13 namespace chromeos {
14
15 // Helper class for transferring authentication related data from one profile
16 // to another: proxy authentication cache, cookies, server bound certs.
17 class ProfileAuthData {
18  public:
19   // Transfers proxy authentication cache and optionally |transfer_cookies| and
20   // server bound certs from the profile that was used for authentication.
21   // |completion_callback| will be called on UI thread after the operation is
22   // completed.
23   static void Transfer(Profile* from_profile,
24                        Profile* to_profile,
25                        bool transfer_cookies,
26                        const base::Closure& completion_callback);
27
28  private:
29   DISALLOW_IMPLICIT_CONSTRUCTORS(ProfileAuthData);
30 };
31
32 }  // namespace chromeos
33
34 #endif  // CHROME_BROWSER_CHROMEOS_LOGIN_PROFILE_AUTH_DATA_H_