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

Unified Diff: runtime/vm/service.h

Issue 170943003: Allow for embedder provided service request handlers (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 10 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
Index: runtime/vm/service.h
diff --git a/runtime/vm/service.h b/runtime/vm/service.h
index 8806b46822b87033a1c51013040d3f1c5099a6b0..1df8a94628b4f964eae8bc6034b4fe9d6414b0a8 100644
--- a/runtime/vm/service.h
+++ b/runtime/vm/service.h
@@ -11,8 +11,10 @@
namespace dart {
+class EmbedderServiceHandler;
class Instance;
class Isolate;
+class JSONStream;
class RawInstance;
class Service : public AllStatic {
@@ -26,8 +28,25 @@ class Service : public AllStatic {
static Isolate* GetServiceIsolate(void* callback_data);
static bool SendIsolateStartupMessage();
static bool SendIsolateShutdownMessage();
- private:
static bool IsRunning();
+
+ static void RegisterIsolateEmbedderCallback(
+ const char* name,
+ Dart_ServiceRequestCallback callback,
+ void* user_data);
+
+ static void RegisterRootEmbedderCallback(
+ const char* name,
+ Dart_ServiceRequestCallback callback,
+ void* user_data);
+
+ private:
+ static void EmbedderHandleMessage(EmbedderServiceHandler* handler,
+ JSONStream* js);
+ static EmbedderServiceHandler* FindIsolateEmbedderHandler(const char* name);
+ static EmbedderServiceHandler* isolate_service_handler_head_;
+ static EmbedderServiceHandler* FindRootEmbedderHandler(const char* name);
+ static EmbedderServiceHandler* root_service_handler_head_;
static Isolate* service_isolate_;
static Dart_LibraryTagHandler default_handler_;
static Dart_Port port_;

Powered by Google App Engine
This is Rietveld 408576698