xref: /aosp_15_r20/external/cronet/net/base/cache_type.h (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1 // Copyright 2009 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef NET_BASE_CACHE_TYPE_H_
6 #define NET_BASE_CACHE_TYPE_H_
7 
8 namespace net {
9 
10 // The types of caches that can be created.
11 enum CacheType {
12   DISK_CACHE,                 // Disk is used as the backing storage.
13   MEMORY_CACHE,               // Data is stored only in memory.
14   REMOVED_MEDIA_CACHE,        // No longer in use.
15   APP_CACHE,                  // Special case of DISK_CACHE.  Optimizes for
16                               // cases where auto-eviction is not desired:
17                               // e.g. cache_storage, service worker script cache
18   SHADER_CACHE,               // Backing store for the GL shader cache.
19   PNACL_CACHE,                // Backing store the PNaCl translation cache
20   GENERATED_BYTE_CODE_CACHE,  // Backing store for renderer generated data like
21                               // bytecode for JavaScript.
22   GENERATED_NATIVE_CODE_CACHE,      // Backing store for renderer generated data
23                                     // like native code for WebAssembly.
24   GENERATED_WEBUI_BYTE_CODE_CACHE,  // Backing store for renderer generated data
25                                     // like bytecode for JavaScript from WebUI
26                                     // pages.
27 };
28 
29 // The types of disk cache backend, only used at backend instantiation.
30 enum BackendType {
31   CACHE_BACKEND_DEFAULT,
32   CACHE_BACKEND_BLOCKFILE,  // The |BackendImpl|.
33   CACHE_BACKEND_SIMPLE  // The |SimpleBackendImpl|.
34 };
35 
36 }  // namespace net
37 
38 #endif  // NET_BASE_CACHE_TYPE_H_
39