Name Description Size Coverage
docs -
FetchEventOpChild.cpp 22143 85 %
FetchEventOpChild.h FetchEventOpChild represents an in-flight FetchEvent operation. 3282 100 %
FetchEventOpParent.cpp 3084 83 %
FetchEventOpParent.h 2329 100 %
FetchEventOpProxyChild.cpp 9656 87 %
FetchEventOpProxyChild.h 2664 100 %
FetchEventOpProxyParent.cpp static 7661 84 %
FetchEventOpProxyParent.h FetchEventOpProxyParent owns a FetchEventOpParent in order to propagate the respondWith() value by directly calling SendRespondWith on the FetchEventOpParent, but the call to Send__delete__ is handled via MozPromise. This is done because this actor may only be created after its managing PRemoteWorker is created, which is asynchronous and may fail. We take on responsibility for the promise once we are created, but we may not be created if the RemoteWorker is never successfully launched. 2526 50 %
IPCNavigationPreloadState.ipdlh 365 -
IPCServiceWorkerDescriptor.ipdlh 1036 -
IPCServiceWorkerRegistrationDescriptor.ipdlh 1958 -
metrics.yaml 7127 -
moz.build 3868 -
NavigationPreloadManager.cpp static 4249 42 %
NavigationPreloadManager.h 1927 100 %
PFetchEventOp.ipdl 954 -
PFetchEventOpProxy.ipdl 921 -
PServiceWorker.ipdl 602 -
PServiceWorkerContainer.ipdl 1316 -
PServiceWorkerManager.ipdl 760 -
PServiceWorkerRegistration.ipdl 1286 -
ServiceWorker.cpp } else { RefPtr<ServiceWorker> self = this; GetRegistration( [self = std::move(self)]( const ServiceWorkerRegistrationDescriptor& aDescriptor) { nsIGlobalObject* global = self->GetParentObject(); NS_ENSURE_TRUE_VOID(global); RefPtr<ServiceWorkerRegistration> reg = global->GetOrCreateServiceWorkerRegistration(aDescriptor); self->MaybeAttachToRegistration(reg); }, [](ErrorResult&& aRv) { // do nothing aRv.SuppressException(); }); 10487 87 %
ServiceWorker.h 2475 100 %
ServiceWorkerActors.cpp 1380 100 %
ServiceWorkerActors.h 1088 -
ServiceWorkerChild.cpp 1771 98 %
ServiceWorkerChild.h 1046 100 %
ServiceWorkerContainer.cpp 25764 82 %
ServiceWorkerContainer.h mozilla_dom_serviceworkercontainer_h_ 4891 100 %
ServiceWorkerContainerChild.cpp 1965 95 %
ServiceWorkerContainerChild.h 1268 100 %
ServiceWorkerContainerParent.cpp 3772 87 %
ServiceWorkerContainerParent.h 1681 50 %
ServiceWorkerContainerProxy.cpp 5037 100 %
ServiceWorkerContainerProxy.h 1440 100 %
ServiceWorkerDescriptor.cpp 4588 88 %
ServiceWorkerDescriptor.h 3357 -
ServiceWorkerEvents.cpp static 45469 40 %
ServiceWorkerEvents.h 9602 95 %
ServiceWorkerInfo.cpp 11370 89 %
ServiceWorkerInfo.h Wherever the spec treats a worker instance and a description of said worker as the same thing; i.e. "Resolve foo with _GetNewestWorker(serviceWorkerRegistration)", we represent the description by this class and spawn a ServiceWorker in the right global when required. 5803 96 %
ServiceWorkerInterceptController.cpp allowIfInheritsPrincipal 6546 92 %
ServiceWorkerInterceptController.h 688 -
ServiceWorkerIPCUtils.h 994 -
ServiceWorkerJob.cpp 7091 94 %
ServiceWorkerJob.h 4311 33 %
ServiceWorkerJobQueue.cpp 3316 95 %
ServiceWorkerJobQueue.h 828 100 %
ServiceWorkerLifetimeExtension.cpp 994 100 %
ServiceWorkerLifetimeExtension.h Conveys how events dispatched at a Service Worker global should impact its lifetime. 3621 100 %
ServiceWorkerManager.cpp 120768 83 %
ServiceWorkerManager.h f4f8755a-69ca-46e8-a65d-775745535990 19173 100 %
ServiceWorkerManagerChild.h 1005 75 %
ServiceWorkerManagerParent.cpp 3636 96 %
ServiceWorkerManagerParent.h 1347 50 %
ServiceWorkerOp.cpp ExtendableEvent::ExtensionsHandler interface 69907 87 %
ServiceWorkerOp.h This must be called once and only once before the first call to `MaybeStart()`; `aActor` will be used for `AsyncLog()` and `ReportCanceled().` 6731 40 %
ServiceWorkerOpArgs.ipdlh ServiceWorkerOpArgs 5676 -
ServiceWorkerOpPromise.h 1554 -
ServiceWorkerParent.cpp 1441 96 %
ServiceWorkerParent.h 1099 50 %
ServiceWorkerPrivate.cpp KeepAliveToken 70951 85 %
ServiceWorkerPrivate.h 14994 55 %
ServiceWorkerProxy.cpp 3577 97 %
ServiceWorkerProxy.h 1509 100 %
ServiceWorkerQuotaUtils.cpp QuotaUsageChecker implements the quota usage checking algorithm. 1. Getting the given origin/group usage through QuotaManagerService. QuotaUsageCheck::Start() implements this step. 2. Checking if the group usage headroom is satisfied. It could be following three situations. a. Group headroom is satisfied without any usage mitigation. b. Group headroom is satisfied after origin usage mitigation. This invokes nsIClearDataService::DeleteDataFromPrincipal(). c. Group headroom is satisfied after group usage mitigation. This invokes nsIClearDataService::DeleteDataFromSite(). QuotaUsageChecker::CheckQuotaHeadroom() implements this step. If the algorithm is done or error out, the QuotaUsageCheck::mCallback will be called with a bool result for external handling. 9325 89 %
ServiceWorkerQuotaUtils.h 644 -
ServiceWorkerRegisterJob.cpp 2197 88 %
ServiceWorkerRegisterJob.h 1200 100 %
ServiceWorkerRegistrar.cpp static 55394 73 %
ServiceWorkerRegistrar.h 4822 100 %
ServiceWorkerRegistrarTypes.ipdlh 983 -
ServiceWorkerRegistration.cpp static 28349 80 %
ServiceWorkerRegistration.h 5286 100 %
ServiceWorkerRegistrationChild.cpp 2417 96 %
ServiceWorkerRegistrationChild.h 1485 100 %
ServiceWorkerRegistrationDescriptor.cpp 8732 91 %
ServiceWorkerRegistrationDescriptor.h 3438 -
ServiceWorkerRegistrationInfo.cpp 29123 89 %
ServiceWorkerRegistrationInfo.h 9099 97 %
ServiceWorkerRegistrationListener.h mozilla_dom_ServiceWorkerRegistrationListener_h 1047 -
ServiceWorkerRegistrationParent.cpp 4600 65 %
ServiceWorkerRegistrationParent.h 2004 50 %
ServiceWorkerRegistrationProxy.cpp 16519 75 %
ServiceWorkerRegistrationProxy.h 2943 100 %
ServiceWorkerScriptCache.cpp force trusted origin 45438 83 %
ServiceWorkerScriptCache.h If there is an error, ignore aInCacheAndEqual and aNewCacheName. On success, if the cached result and network result matched, aInCacheAndEqual will be true and no new cache name is passed, otherwise use the new cache name to load the ServiceWorker. 1703 -
ServiceWorkerShutdownBlocker.cpp static 8219 79 %
ServiceWorkerShutdownBlocker.h Main thread only. A ServiceWorkerShutdownBlocker will "accept promises", and each of these promises will be a "pending promise" while it hasn't settled. At some point, `StopAcceptingPromises()` should be called and the state will change to "not accepting promises" (this is a one way state transition). The shutdown phase of the shutdown client the blocker is created with will be blocked until there are no more pending promises. It doesn't matter whether the state changes to "not accepting promises" before or during the associated shutdown phase. In beta/release builds there will be an additional timer that starts ticking once both the shutdown phase has been reached and the state is "not accepting promises". If when the timer expire there are still pending promises, shutdown will be forcefully unblocked. 5204 100 %
ServiceWorkerShutdownState.cpp 5375 97 %
ServiceWorkerShutdownState.h 1636 -
ServiceWorkerUnregisterCallback.cpp 959 57 %
ServiceWorkerUnregisterCallback.h 1021 100 %
ServiceWorkerUnregisterJob.cpp 6211 94 %
ServiceWorkerUnregisterJob.h IsExclusive = 1154 100 %
ServiceWorkerUpdateJob.cpp The spec mandates slightly different behaviors for computing the scope prefix string in case a Service-Worker-Allowed header is specified versus when it's not available. With the header: "Set maxScopeString to "/" concatenated with the strings in maxScope's path (including empty strings), separated from each other by "/"." Without the header: "Set maxScopeString to "/" concatenated with the strings, except the last string that denotes the script's file name, in registration's registering script url's path (including empty strings), separated from each other by "/"." In simpler terms, if the header is not present, we should only use the "directory" part of the pathname, and otherwise the entire pathname should be used. ScopeStringPrefixMode allows the caller to specify the desired behavior. 18897 87 %
ServiceWorkerUpdateJob.h 4241 100 %
ServiceWorkerUtils.cpp 15132 89 %
ServiceWorkerUtils.h 4409 -
test 90 %