MCPcopy Create free account
hub / github.com/electron/electron / ResolveHost

Method ResolveHost

shell/browser/api/electron_api_session.cc:662–691  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

660}
661
662v8::Local<v8::Promise> Session::ResolveHost(
663 std::string host,
664 std::optional<network::mojom::ResolveHostParametersPtr> params) {
665 gin_helper::Promise<gin_helper::Dictionary> promise(isolate_);
666 v8::Local<v8::Promise> handle = promise.GetHandle();
667
668 auto fn = base::MakeRefCounted<ResolveHostFunction>(
669 browser_context(), std::move(host),
670 params ? std::move(params.value()) : nullptr,
671 base::BindOnce(
672 [](gin_helper::Promise<gin_helper::Dictionary> promise,
673 int64_t net_error, const std::optional<net::AddressList>& addrs) {
674 if (net_error < 0) {
675 promise.RejectWithErrorMessage(net::ErrorToString(net_error));
676 } else {
677 DCHECK(addrs.has_value() && !addrs->empty());
678
679 v8::HandleScope handle_scope(promise.isolate());
680 auto dict =
681 gin_helper::Dictionary::CreateEmpty(promise.isolate());
682 dict.Set("endpoints", addrs->endpoints());
683 promise.Resolve(dict);
684 }
685 },
686 std::move(promise)));
687
688 fn->Run();
689
690 return handle;
691}
692
693v8::Local<v8::Promise> Session::GetCacheSize() {
694 gin_helper::Promise<int64_t> promise(isolate_);

Callers 1

RunMethod · 0.80

Calls 6

GetHandleMethod · 0.45
isolateMethod · 0.45
SetMethod · 0.45
ResolveMethod · 0.45
RunMethod · 0.45

Tested by

no test coverage detected