1*6777b538SAndroid Build Coastguard Worker // Copyright 2012 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker #ifndef NET_BASE_IDEMPOTENCY_H_ 6*6777b538SAndroid Build Coastguard Worker #define NET_BASE_IDEMPOTENCY_H_ 7*6777b538SAndroid Build Coastguard Worker 8*6777b538SAndroid Build Coastguard Worker namespace net { 9*6777b538SAndroid Build Coastguard Worker 10*6777b538SAndroid Build Coastguard Worker // Idempotency of the request, which determines that if it is safe to enable 11*6777b538SAndroid Build Coastguard Worker // 0-RTT for the request. By default, 0-RTT is only enabled for safe 12*6777b538SAndroid Build Coastguard Worker // HTTP methods, i.e., GET, HEAD, OPTIONS, and TRACE. For other methods, 13*6777b538SAndroid Build Coastguard Worker // enabling 0-RTT may cause security issues since a network observer can replay 14*6777b538SAndroid Build Coastguard Worker // the request. If the request has any side effects, those effects can happen 15*6777b538SAndroid Build Coastguard Worker // multiple times. It is only safe to enable the 0-RTT if it is known that 16*6777b538SAndroid Build Coastguard Worker // the request is idempotent. 17*6777b538SAndroid Build Coastguard Worker // A Java counterpart will be generated for this enum. 18*6777b538SAndroid Build Coastguard Worker // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.net 19*6777b538SAndroid Build Coastguard Worker // GENERATED_JAVA_CLASS_NAME_OVERRIDE: Idempotency 20*6777b538SAndroid Build Coastguard Worker enum Idempotency { 21*6777b538SAndroid Build Coastguard Worker DEFAULT_IDEMPOTENCY = 0, 22*6777b538SAndroid Build Coastguard Worker IDEMPOTENT = 1, 23*6777b538SAndroid Build Coastguard Worker NOT_IDEMPOTENT = 2, 24*6777b538SAndroid Build Coastguard Worker }; 25*6777b538SAndroid Build Coastguard Worker 26*6777b538SAndroid Build Coastguard Worker } // namespace net 27*6777b538SAndroid Build Coastguard Worker 28*6777b538SAndroid Build Coastguard Worker #endif // NET_BASE_IDEMPOTENCY_H_ 29