OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_CHROMEOS_SETTINGS_SESSION_MANAGER_OPERATION_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_SETTINGS_SESSION_MANAGER_OPERATION_H_ |
6 #define CHROME_BROWSER_CHROMEOS_SETTINGS_SESSION_MANAGER_OPERATION_H_ | 6 #define CHROME_BROWSER_CHROMEOS_SETTINGS_SESSION_MANAGER_OPERATION_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/callback.h" | 9 #include "base/callback.h" |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 | 120 |
121 DISALLOW_COPY_AND_ASSIGN(SessionManagerOperation); | 121 DISALLOW_COPY_AND_ASSIGN(SessionManagerOperation); |
122 }; | 122 }; |
123 | 123 |
124 // This operation loads the public owner key from disk if appropriate, fetches | 124 // This operation loads the public owner key from disk if appropriate, fetches |
125 // the policy blob from session manager, and validates the loaded policy blob. | 125 // the policy blob from session manager, and validates the loaded policy blob. |
126 class LoadSettingsOperation : public SessionManagerOperation { | 126 class LoadSettingsOperation : public SessionManagerOperation { |
127 public: | 127 public: |
128 // Creates a new load operation. | 128 // Creates a new load operation. |
129 explicit LoadSettingsOperation(const Callback& callback); | 129 explicit LoadSettingsOperation(const Callback& callback); |
130 virtual ~LoadSettingsOperation(); | 130 ~LoadSettingsOperation() override; |
131 | 131 |
132 protected: | 132 protected: |
133 // SessionManagerOperation: | 133 // SessionManagerOperation: |
134 virtual void Run() override; | 134 void Run() override; |
135 | 135 |
136 private: | 136 private: |
137 DISALLOW_COPY_AND_ASSIGN(LoadSettingsOperation); | 137 DISALLOW_COPY_AND_ASSIGN(LoadSettingsOperation); |
138 }; | 138 }; |
139 | 139 |
140 // Stores a pre-generated policy blob and reloads the device settings from | 140 // Stores a pre-generated policy blob and reloads the device settings from |
141 // session_manager. | 141 // session_manager. |
142 class StoreSettingsOperation : public SessionManagerOperation { | 142 class StoreSettingsOperation : public SessionManagerOperation { |
143 public: | 143 public: |
144 // Creates a new store operation. | 144 // Creates a new store operation. |
145 StoreSettingsOperation( | 145 StoreSettingsOperation( |
146 const Callback& callback, | 146 const Callback& callback, |
147 scoped_ptr<enterprise_management::PolicyFetchResponse> policy); | 147 scoped_ptr<enterprise_management::PolicyFetchResponse> policy); |
148 virtual ~StoreSettingsOperation(); | 148 ~StoreSettingsOperation() override; |
149 | 149 |
150 protected: | 150 protected: |
151 // SessionManagerOperation: | 151 // SessionManagerOperation: |
152 virtual void Run() override; | 152 void Run() override; |
153 | 153 |
154 private: | 154 private: |
155 // Handles the result of the store operation and triggers the load. | 155 // Handles the result of the store operation and triggers the load. |
156 void HandleStoreResult(bool success); | 156 void HandleStoreResult(bool success); |
157 | 157 |
158 scoped_ptr<enterprise_management::PolicyFetchResponse> policy_; | 158 scoped_ptr<enterprise_management::PolicyFetchResponse> policy_; |
159 | 159 |
160 base::WeakPtrFactory<StoreSettingsOperation> weak_factory_; | 160 base::WeakPtrFactory<StoreSettingsOperation> weak_factory_; |
161 | 161 |
162 DISALLOW_COPY_AND_ASSIGN(StoreSettingsOperation); | 162 DISALLOW_COPY_AND_ASSIGN(StoreSettingsOperation); |
163 }; | 163 }; |
164 | 164 |
165 } // namespace chromeos | 165 } // namespace chromeos |
166 | 166 |
167 #endif // CHROME_BROWSER_CHROMEOS_SETTINGS_SESSION_MANAGER_OPERATION_H_ | 167 #endif // CHROME_BROWSER_CHROMEOS_SETTINGS_SESSION_MANAGER_OPERATION_H_ |
OLD | NEW |