| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium OS 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 #include <string> | 5 #include <string> |
| 6 #include <tr1/memory> | 6 #include <tr1/memory> |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include <base/at_exit.h> |
| 10 #include <base/command_line.h> |
| 11 #include <base/logging.h> |
| 12 #include <base/string_util.h> |
| 9 #include <gflags/gflags.h> | 13 #include <gflags/gflags.h> |
| 10 #include <glib.h> | 14 #include <glib.h> |
| 15 #include <metrics/metrics_library.h> |
| 11 | 16 |
| 12 #include "base/at_exit.h" | |
| 13 #include "base/command_line.h" | |
| 14 #include "base/logging.h" | |
| 15 #include "base/string_util.h" | |
| 16 #include "metrics/metrics_library.h" | |
| 17 #include "update_engine/dbus_constants.h" | 17 #include "update_engine/dbus_constants.h" |
| 18 #include "update_engine/dbus_service.h" | 18 #include "update_engine/dbus_service.h" |
| 19 #include "update_engine/prefs.h" | 19 #include "update_engine/prefs.h" |
| 20 #include "update_engine/subprocess.h" | 20 #include "update_engine/subprocess.h" |
| 21 #include "update_engine/update_attempter.h" | 21 #include "update_engine/update_attempter.h" |
| 22 #include "update_engine/utils.h" | 22 #include "update_engine/update_check_scheduler.h" |
| 23 | 23 |
| 24 extern "C" { | 24 extern "C" { |
| 25 #include "update_engine/update_engine.dbusserver.h" | 25 #include "update_engine/update_engine.dbusserver.h" |
| 26 } | 26 } |
| 27 | 27 |
| 28 DEFINE_bool(logtostderr, false, | 28 DEFINE_bool(logtostderr, false, |
| 29 "Write logs to stderr instead of to a file in log_dir."); | 29 "Write logs to stderr instead of to a file in log_dir."); |
| 30 DEFINE_bool(foreground, false, | 30 DEFINE_bool(foreground, false, |
| 31 "Don't daemon()ize; run in foreground."); | 31 "Don't daemon()ize; run in foreground."); |
| 32 | 32 |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 121 | 121 |
| 122 // Create the dbus service object: | 122 // Create the dbus service object: |
| 123 dbus_g_object_type_install_info(UPDATE_ENGINE_TYPE_SERVICE, | 123 dbus_g_object_type_install_info(UPDATE_ENGINE_TYPE_SERVICE, |
| 124 &dbus_glib_update_engine_service_object_info); | 124 &dbus_glib_update_engine_service_object_info); |
| 125 UpdateEngineService* service = | 125 UpdateEngineService* service = |
| 126 UPDATE_ENGINE_SERVICE(g_object_new(UPDATE_ENGINE_TYPE_SERVICE, NULL)); | 126 UPDATE_ENGINE_SERVICE(g_object_new(UPDATE_ENGINE_TYPE_SERVICE, NULL)); |
| 127 service->update_attempter_ = &update_attempter; | 127 service->update_attempter_ = &update_attempter; |
| 128 update_attempter.set_dbus_service(service); | 128 update_attempter.set_dbus_service(service); |
| 129 chromeos_update_engine::SetupDbusService(service); | 129 chromeos_update_engine::SetupDbusService(service); |
| 130 | 130 |
| 131 update_attempter.InitiatePeriodicUpdateChecks(); | 131 // Schedule periodic update checks. |
| 132 chromeos_update_engine::UpdateCheckScheduler scheduler(&update_attempter); |
| 133 scheduler.Run(); |
| 132 | 134 |
| 133 // Update boot flags after 45 seconds | 135 // Update boot flags after 45 seconds |
| 134 g_timeout_add_seconds(45, &chromeos_update_engine::UpdateBootFlags, NULL); | 136 g_timeout_add_seconds(45, &chromeos_update_engine::UpdateBootFlags, NULL); |
| 135 | 137 |
| 136 // Run the main loop until exit time: | 138 // Run the main loop until exit time: |
| 137 g_main_loop_run(loop); | 139 g_main_loop_run(loop); |
| 138 | 140 |
| 139 // Cleanup: | 141 // Cleanup: |
| 140 g_main_loop_unref(loop); | 142 g_main_loop_unref(loop); |
| 141 update_attempter.set_dbus_service(NULL); | 143 update_attempter.set_dbus_service(NULL); |
| 142 g_object_unref(G_OBJECT(service)); | 144 g_object_unref(G_OBJECT(service)); |
| 143 | 145 |
| 144 LOG(INFO) << "Chrome OS Update Engine terminating"; | 146 LOG(INFO) << "Chrome OS Update Engine terminating"; |
| 145 return 0; | 147 return 0; |
| 146 } | 148 } |
| OLD | NEW |