MCPcopy Create free account
hub / github.com/aeroxy/chrome-devtools-cli / handle_request

Function handle_request

src/daemon.rs:189–219  ·  view source on GitHub ↗
(client: &mut CdpClient, req: &DaemonRequest)

Source from the content-addressed store, hash-verified

187}
188
189async fn handle_request(client: &mut CdpClient, req: &DaemonRequest) -> DaemonResponse {
190 let start = std::time::Instant::now();
191 let cmd_name = req.command.as_str();
192 match executor::execute_command(client, req).await {
193 Ok(result) => {
194 let duration = start.elapsed();
195 telemetry::log_command(cmd_name, duration, true, result.error_code);
196 DaemonResponse {
197 success: true,
198 output: result.output,
199 error: String::new(),
200 navigated_to: result.navigated_to,
201 error_code: result.error_code,
202 }
203 }
204 Err(e) => {
205 let duration = start.elapsed();
206 let error_code = e
207 .downcast_ref::<crate::error::CliError>()
208 .map(|ce| ce.code().code());
209 telemetry::log_command(cmd_name, duration, false, error_code);
210 DaemonResponse {
211 success: false,
212 output: String::new(),
213 error: format!("{e:#}"),
214 navigated_to: None,
215 error_code,
216 }
217 }
218 }
219}

Callers 1

handle_connectionFunction · 0.85

Calls 3

execute_commandFunction · 0.85
log_commandFunction · 0.85
codeMethod · 0.80

Tested by

no test coverage detected