diff options
Diffstat (limited to 'components/devtools/actors')
-rw-r--r-- | components/devtools/actors/browsing_context.rs | 4 | ||||
-rw-r--r-- | components/devtools/actors/console.rs | 10 | ||||
-rw-r--r-- | components/devtools/actors/watcher.rs | 24 | ||||
-rw-r--r-- | components/devtools/actors/worker.rs | 28 |
4 files changed, 21 insertions, 45 deletions
diff --git a/components/devtools/actors/browsing_context.rs b/components/devtools/actors/browsing_context.rs index 5de0855df4a..81a00e82d47 100644 --- a/components/devtools/actors/browsing_context.rs +++ b/components/devtools/actors/browsing_context.rs @@ -149,10 +149,6 @@ impl ResourceAvailable for BrowsingContextActor { fn actor_name(&self) -> String { self.name.clone() } - - fn get_streams(&self) -> &RefCell<HashMap<StreamId, TcpStream>> { - &self.streams - } } impl Actor for BrowsingContextActor { diff --git a/components/devtools/actors/console.rs b/components/devtools/actors/console.rs index 3897ffa0fce..fd0bd184bfa 100644 --- a/components/devtools/actors/console.rs +++ b/components/devtools/actors/console.rs @@ -252,6 +252,7 @@ impl ConsoleActor { page_error: PageError, id: UniqueId, registry: &ActorRegistry, + stream: &mut TcpStream, ) { self.cached_events .borrow_mut() @@ -262,7 +263,11 @@ impl ConsoleActor { if let Root::BrowsingContext(bc) = &self.root { registry .find::<BrowsingContextActor>(bc) - .resource_available(PageErrorWrapper { page_error }, "error-message".into()) + .resource_available( + PageErrorWrapper { page_error }, + "error-message".into(), + stream, + ) }; } } @@ -272,6 +277,7 @@ impl ConsoleActor { console_message: ConsoleMessage, id: UniqueId, registry: &ActorRegistry, + stream: &mut TcpStream, ) { let log_message: ConsoleLog = console_message.into(); self.cached_events @@ -283,7 +289,7 @@ impl ConsoleActor { if let Root::BrowsingContext(bc) = &self.root { registry .find::<BrowsingContextActor>(bc) - .resource_available(log_message, "console-message".into()) + .resource_available(log_message, "console-message".into(), stream) }; } } diff --git a/components/devtools/actors/watcher.rs b/components/devtools/actors/watcher.rs index b0b2c755fd8..061ffc92336 100644 --- a/components/devtools/actors/watcher.rs +++ b/components/devtools/actors/watcher.rs @@ -31,7 +31,7 @@ use crate::actors::watcher::thread_configuration::{ ThreadConfigurationActor, ThreadConfigurationActorMsg, }; use crate::protocol::JsonPacketStream; -use crate::resource::{ResourceAvailable, ResourceAvailableReply}; +use crate::resource::ResourceAvailable; use crate::{EmptyReplyMsg, StreamId, WorkerActor}; pub mod network_parent; @@ -291,28 +291,28 @@ impl Actor for WatcherActor { title: Some(target.title.borrow().clone()), url: Some(target.url.borrow().clone()), }; - target.resource_available(event, "document-event".into()); + target.resource_available(event, "document-event".into(), stream); } }, "source" => { let thread_actor = registry.find::<ThreadActor>(&target.thread); let sources = thread_actor.source_manager.sources(); - target.resources_available(sources.iter().collect(), "source".into()); + target.resources_available( + sources.iter().collect(), + "source".into(), + stream, + ); for worker_name in &root.workers { let worker = registry.find::<WorkerActor>(worker_name); let thread = registry.find::<ThreadActor>(&worker.thread); let worker_sources = thread.source_manager.sources(); - let msg = ResourceAvailableReply { - from: worker.name(), - type_: "resources-available-array".into(), - array: vec![( - "source".to_string(), - worker_sources.iter().cloned().collect(), - )], - }; - let _ = stream.write_json_packet(&msg); + worker.resources_available( + worker_sources.iter().collect(), + "source".into(), + stream, + ); } }, "console-message" | "error-message" => {}, diff --git a/components/devtools/actors/worker.rs b/components/devtools/actors/worker.rs index 68ff56fb3b2..f3ca4f2aed7 100644 --- a/components/devtools/actors/worker.rs +++ b/components/devtools/actors/worker.rs @@ -17,7 +17,7 @@ use servo_url::ServoUrl; use crate::StreamId; use crate::actor::{Actor, ActorMessageStatus, ActorRegistry}; use crate::protocol::JsonPacketStream; -use crate::resource::{ResourceAvailable, ResourceAvailableReply}; +use crate::resource::ResourceAvailable; #[derive(Clone, Copy)] #[allow(dead_code)] @@ -60,10 +60,6 @@ impl ResourceAvailable for WorkerActor { fn actor_name(&self) -> String { self.name.clone() } - - fn get_streams(&self) -> &RefCell<HashMap<StreamId, TcpStream>> { - &self.streams - } } impl Actor for WorkerActor { @@ -133,28 +129,6 @@ impl Actor for WorkerActor { } } -impl WorkerActor { - pub(crate) fn resource_available<T: Serialize>(&self, resource: T, resource_type: String) { - self.resources_available(vec![resource], resource_type); - } - - pub(crate) fn resources_available<T: Serialize>( - &self, - resources: Vec<T>, - resource_type: String, - ) { - let msg = ResourceAvailableReply::<T> { - from: self.name(), - type_: "resources-available-array".into(), - array: vec![(resource_type, resources)], - }; - - for stream in self.streams.borrow_mut().values_mut() { - let _ = stream.write_json_packet(&msg); - } - } -} - #[derive(Serialize)] struct DetachedReply { from: String, |