// Copyright 2021 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef SERVICES_NETWORK_RADIO_MONITOR_ANDROID_H_ #define SERVICES_NETWORK_RADIO_MONITOR_ANDROID_H_ #include "base/component_export.h" #include "services/network/public/mojom/host_resolver.mojom-forward.h" namespace net { struct NetworkTrafficAnnotationTag; } // namespace net namespace network { struct ResourceRequest; constexpr char kUmaNamePossibleWakeupTriggerURLLoaderAnnotationId[] = "Network.Radio.PossibleWakeupTrigger.URLLoaderAnnotationId2"; constexpr char kUmaNamePossibleWakeupTriggerURLLoaderRequestDestination[] = "Network.Radio.PossibleWakeupTrigger.URLLoaderRequestDestination"; constexpr char kUmaNamePossibleWakeupTriggerURLLoaderRequestPriority[] = "Network.Radio.PossibleWakeupTrigger.URLLoaderRequestPriority"; constexpr char kUmaNamePossibleWakeupTriggerURLLoaderRequestIsPrefetch[] = "Network.Radio.PossibleWakeupTrigger.URLLoaderRequestIsPrefetch"; constexpr char kUmaNamePossibleWakeupTriggerResolveHost[] = "Network.Radio.PossibleWakeupTrigger.ResolveHostPurpose2"; // Records UMAs when a network request initiated by a URLLoader likely // wake-ups radio. COMPONENT_EXPORT(NETWORK_SERVICE) void MaybeRecordURLLoaderCreationForWakeupTrigger( const ResourceRequest& request, const net::NetworkTrafficAnnotationTag& traffic_annotation); // Records a host resolve request when the request likely wake-ups radio. COMPONENT_EXPORT(NETWORK_SERVICE) void MaybeRecordResolveHostForWakeupTrigger( const mojom::ResolveHostParametersPtr& parameters); } // namespace network #endif // SERVICES_NETWORK_RADIO_MONITOR_ANDROID_H_