radio_monitor_android.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // Copyright 2021 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef SERVICES_NETWORK_RADIO_MONITOR_ANDROID_H_
  5. #define SERVICES_NETWORK_RADIO_MONITOR_ANDROID_H_
  6. #include "base/component_export.h"
  7. #include "services/network/public/mojom/host_resolver.mojom-forward.h"
  8. namespace net {
  9. struct NetworkTrafficAnnotationTag;
  10. } // namespace net
  11. namespace network {
  12. struct ResourceRequest;
  13. constexpr char kUmaNamePossibleWakeupTriggerURLLoaderAnnotationId[] =
  14. "Network.Radio.PossibleWakeupTrigger.URLLoaderAnnotationId2";
  15. constexpr char kUmaNamePossibleWakeupTriggerURLLoaderRequestDestination[] =
  16. "Network.Radio.PossibleWakeupTrigger.URLLoaderRequestDestination";
  17. constexpr char kUmaNamePossibleWakeupTriggerURLLoaderRequestPriority[] =
  18. "Network.Radio.PossibleWakeupTrigger.URLLoaderRequestPriority";
  19. constexpr char kUmaNamePossibleWakeupTriggerURLLoaderRequestIsPrefetch[] =
  20. "Network.Radio.PossibleWakeupTrigger.URLLoaderRequestIsPrefetch";
  21. constexpr char kUmaNamePossibleWakeupTriggerResolveHost[] =
  22. "Network.Radio.PossibleWakeupTrigger.ResolveHostPurpose2";
  23. // Records UMAs when a network request initiated by a URLLoader likely
  24. // wake-ups radio.
  25. COMPONENT_EXPORT(NETWORK_SERVICE)
  26. void MaybeRecordURLLoaderCreationForWakeupTrigger(
  27. const ResourceRequest& request,
  28. const net::NetworkTrafficAnnotationTag& traffic_annotation);
  29. // Records a host resolve request when the request likely wake-ups radio.
  30. COMPONENT_EXPORT(NETWORK_SERVICE)
  31. void MaybeRecordResolveHostForWakeupTrigger(
  32. const mojom::ResolveHostParametersPtr& parameters);
  33. } // namespace network
  34. #endif // SERVICES_NETWORK_RADIO_MONITOR_ANDROID_H_