// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef SERVICES_SERVICE_MANAGER_STANDALONE_CONTEXT_H_ #define SERVICES_SERVICE_MANAGER_STANDALONE_CONTEXT_H_ #include #include "base/macros.h" #include "base/time/time.h" #include "base/values.h" #include "services/service_manager/runner/host/service_process_launcher_delegate.h" namespace base { class Value; } namespace service_manager { class ServiceManager; // The "global" context for the service manager's main process. class Context { public: Context(ServiceProcessLauncherDelegate* launcher_delegate, std::unique_ptr catalog_content); ~Context(); // Run the application specified on the command line. void RunCommandLineApplication(); ServiceManager* service_manager() { return service_manager_.get(); } private: // Runs the app specified by |name|. void Run(const std::string& name); std::unique_ptr service_manager_; base::Time main_entry_time_; DISALLOW_COPY_AND_ASSIGN(Context); }; } // namespace service_manager #endif // SERVICES_SERVICE_MANAGER_STANDALONE_CONTEXT_H_