#include "third_party/blink/renderer/core/workers/threaded_messaging_proxy_base.h"
#include "base/feature_list.h"
#include "base/synchronization/waitable_event.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/platform/task_type.h"
#include "third_party/blink/public/platform/web_worker_fetch_context.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/inspector/devtools_agent.h"
#include "third_party/blink/renderer/core/loader/document_loader.h"
#include "third_party/blink/renderer/core/workers/global_scope_creation_params.h"
#include "third_party/blink/renderer/core/workers/worker_global_scope.h"
#include "third_party/blink/renderer/platform/bindings/source_location.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_fetcher.h"
namespace blink {
namespace {
static int g_live_messaging_proxy_count = …;
}
ThreadedMessagingProxyBase::ThreadedMessagingProxyBase(
ExecutionContext* execution_context,
scoped_refptr<base::SingleThreadTaskRunner> parent_agent_group_task_runner)
: … { … }
ThreadedMessagingProxyBase::~ThreadedMessagingProxyBase() { … }
int ThreadedMessagingProxyBase::ProxyCount() { … }
void ThreadedMessagingProxyBase::Trace(Visitor* visitor) const { … }
void ThreadedMessagingProxyBase::InitializeWorkerThread(
std::unique_ptr<GlobalScopeCreationParams> global_scope_creation_params,
const std::optional<WorkerBackingThreadStartupData>& thread_startup_data,
const std::optional<const blink::DedicatedWorkerToken>& token,
std::unique_ptr<WorkerDevToolsParams> client_provided_devtools_params) { … }
void ThreadedMessagingProxyBase::CountFeature(WebFeature feature) { … }
void ThreadedMessagingProxyBase::CountWebDXFeature(
mojom::blink::WebDXFeature feature) { … }
void ThreadedMessagingProxyBase::ReportConsoleMessage(
mojom::ConsoleMessageSource source,
mojom::ConsoleMessageLevel level,
const String& message,
std::unique_ptr<SourceLocation> location) { … }
void ThreadedMessagingProxyBase::ParentObjectDestroyed() { … }
void ThreadedMessagingProxyBase::WorkerThreadTerminated() { … }
void ThreadedMessagingProxyBase::TerminateGlobalScope() { … }
ExecutionContext* ThreadedMessagingProxyBase::GetExecutionContext() const { … }
ParentExecutionContextTaskRunners*
ThreadedMessagingProxyBase::GetParentExecutionContextTaskRunners() const { … }
scoped_refptr<base::SingleThreadTaskRunner>
ThreadedMessagingProxyBase::GetParentAgentGroupTaskRunner() const { … }
WorkerThread* ThreadedMessagingProxyBase::GetWorkerThread() const { … }
bool ThreadedMessagingProxyBase::IsParentContextThread() const { … }
}