Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(163)

Unified Diff: services/shell/public/cpp/service_runner.h

Issue 2419723002: Move services/shell to services/service_manager (Closed)
Patch Set: rebase Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « services/shell/public/cpp/service_context_ref.h ('k') | services/shell/public/cpp/service_test.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: services/shell/public/cpp/service_runner.h
diff --git a/services/shell/public/cpp/service_runner.h b/services/shell/public/cpp/service_runner.h
deleted file mode 100644
index 3e6283125e0daaa2fd683e3332ed46ca50ccd6a5..0000000000000000000000000000000000000000
--- a/services/shell/public/cpp/service_runner.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright 2014 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_SHELL_PUBLIC_CPP_SERVICE_RUNNER_H_
-#define SERVICES_SHELL_PUBLIC_CPP_SERVICE_RUNNER_H_
-
-#include <memory>
-
-#include "base/message_loop/message_loop.h"
-#include "mojo/public/cpp/system/core.h"
-
-namespace shell {
-
-class Service;
-class ServiceContext;
-
-// A utility for running a Service that uses //base. The typical use case is to
-// use from your ServiceMain:
-//
-// MojoResult ServiceMain(MojoHandle service_request_handle) {
-// shell::ServiceRunner runner(new MyService);
-// return runner.Run(service_request_handle);
-// }
-//
-// ServiceRunner takes care of chromium environment initialization and
-// shutdown, and starting a base::MessageLoop from which your service can run
-// and ultimately Quit().
-class ServiceRunner {
- public:
- // Takes ownership of |service|.
- explicit ServiceRunner(Service* service);
- ~ServiceRunner();
-
- static void InitBaseCommandLine();
-
- void set_message_loop_type(base::MessageLoop::Type type);
-
- // Once the various parameters have been set above, use Run to initialize an
- // ServiceContext wired to the provided delegate, and run a MessageLoop until
- // the service exits.
- //
- // Iff |init_base| is true, the runner will perform some initialization of
- // base globals (e.g. CommandLine and AtExitManager) before starting the
- // service.
- MojoResult Run(MojoHandle shell_handle, bool init_base);
-
- // Calls Run above with |init_base| set to |true|.
- MojoResult Run(MojoHandle shell_handle);
-
- // Allows the caller to shut down the connection with the Service Manager.
- // After the Service Manager notices the pipe has closed, it will no longer
- // track an instance of this service, though this service may continue to run
- // and handle requests from others.
- void DestroyServiceContext();
-
- // Allows the caller to explicitly quit the service. Must be called from
- // the thread which created the ServiceRunner.
- void Quit();
-
- private:
- std::unique_ptr<Service> service_;
-
- // MessageLoop type. Default is TYPE_DEFAULT.
- base::MessageLoop::Type message_loop_type_;
- // Whether Run() has been called.
- bool has_run_;
-
- DISALLOW_COPY_AND_ASSIGN(ServiceRunner);
-};
-
-} // namespace shell
-
-#endif // SERVICES_SHELL_PUBLIC_CPP_SERVICE_RUNNER_H_
« no previous file with comments | « services/shell/public/cpp/service_context_ref.h ('k') | services/shell/public/cpp/service_test.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698