| // Copyright 2025 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef NET_DEVICE_BOUND_SESSIONS_SESSION_USAGE_H_ |
| #define NET_DEVICE_BOUND_SESSIONS_SESSION_USAGE_H_ |
| |
| namespace net::device_bound_sessions { |
| |
| // Represents per-request usage of a session for populating use |
| // counters. This currently has the invariant that requests only move |
| // from lower-valued usage enums to higher-valued ones. |
| // These values are persisted to logs. Entries should not be renumbered and |
| // numeric values should never be reused. |
| // LINT.IfChange(DeviceBoundSessionUsage) |
| enum class SessionUsage { |
| // Usage is unknown |
| kUnknown = 0, |
| // Request is not in scope of any session |
| kNoUsage = 1, |
| // Request is in scope of at least one session, but was not deferred |
| kInScopeNotDeferred = 2, |
| // Request was deferred by a session |
| kDeferred = 3, |
| kMaxValue = kDeferred |
| }; |
| // LINT.ThenChange(//tools/metrics/histograms/metadata/net/enums.xml:DeviceBoundSessionUsage) |
| |
| } // namespace net::device_bound_sessions |
| |
| #endif // NET_DEVICE_BOUND_SESSIONS_SESSION_USAGE_H_ |