Index: runtime/vm/service.h |
diff --git a/runtime/vm/service.h b/runtime/vm/service.h |
index 85c607f309c1194a7da7488d709b6977fd67edd2..001a65d03050c34ae8f7cd56075f71217802b95e 100644 |
--- a/runtime/vm/service.h |
+++ b/runtime/vm/service.h |
@@ -73,7 +73,7 @@ class Service : public AllStatic { |
static bool NeedsEchoEvents() { return needs_echo_events_; } |
static bool NeedsGraphEvents() { return needs_graph_events_; } |
- static void ListenStream(const char* stream_id); |
+ static bool ListenStream(const char* stream_id); |
static void CancelStream(const char* stream_id); |
static void HandleEvent(ServiceEvent* event); |
@@ -88,10 +88,34 @@ class Service : public AllStatic { |
Dart_ServiceRequestCallback callback, |
void* user_data); |
+ static void SetEmbedderStreamCallbacks( |
+ Dart_ServiceStreamListenCallback listen_callback, |
+ Dart_ServiceStreamCancelCallback cancel_callback); |
+ |
static void SendEchoEvent(Isolate* isolate, const char* text); |
static void SendGraphEvent(Isolate* isolate); |
static void SendInspectEvent(Isolate* isolate, const Object& inspectee); |
+ static void SendEmbedderEvent(Isolate* isolate, |
+ const char* stream_id, |
+ const char* event_kind, |
+ const uint8_t* bytes, |
+ intptr_t bytes_len); |
+ |
+ static Dart_ServiceStreamListenCallback stream_listen_callback() { |
+ return stream_listen_callback_; |
+ } |
+ static Dart_ServiceStreamCancelCallback stream_cancel_callback() { |
+ return stream_cancel_callback_; |
+ } |
+ |
+ // Well-known stream ids. |
+ static const char* const kIsolateStreamId; |
+ static const char* const kDebugStreamId; |
+ static const char* const kGCStreamId; |
+ static const char* const kEchoStreamId; |
+ static const char* const kGraphStreamId; |
+ |
private: |
static void InvokeMethod(Isolate* isolate, const Array& message); |
@@ -113,6 +137,8 @@ class Service : public AllStatic { |
static EmbedderServiceHandler* isolate_service_handler_head_; |
static EmbedderServiceHandler* root_service_handler_head_; |
+ static Dart_ServiceStreamListenCallback stream_listen_callback_; |
+ static Dart_ServiceStreamCancelCallback stream_cancel_callback_; |
static bool needs_isolate_events_; |
static bool needs_debug_events_; |