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_ 35