Class FileSystemHttpCacheV2Config.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
io.envoyproxy.envoy.extensions.http.cache_v2.file_system_http_cache.v3.FileSystemHttpCacheV2Config.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, FileSystemHttpCacheV2ConfigOrBuilder, Cloneable
Enclosing class:
FileSystemHttpCacheV2Config

public static final class FileSystemHttpCacheV2Config.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder> implements FileSystemHttpCacheV2ConfigOrBuilder
 Configuration for a cache implementation that caches in the local file system.

 By default this cache uses a least-recently-used eviction strategy.

 For implementation details, see `DESIGN.md <https://github.com/envoyproxy/envoy/blob/main/source/extensions/http/cache_v2/file_system_http_cache/DESIGN.md>`_.
 [#next-free-field: 11]
 
Protobuf type envoy.extensions.http.cache_v2.file_system_http_cache.v3.FileSystemHttpCacheV2Config
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • getDefaultInstanceForType

      public FileSystemHttpCacheV2Config getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public FileSystemHttpCacheV2Config buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • setField

      public FileSystemHttpCacheV2Config.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • clearField

      public FileSystemHttpCacheV2Config.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • clearOneof

      public FileSystemHttpCacheV2Config.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • setRepeatedField

      public FileSystemHttpCacheV2Config.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • addRepeatedField

      public FileSystemHttpCacheV2Config.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • mergeFrom

      public FileSystemHttpCacheV2Config.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<FileSystemHttpCacheV2Config.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • mergeFrom

      public FileSystemHttpCacheV2Config.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<FileSystemHttpCacheV2Config.Builder>
      Throws:
      IOException
    • hasManagerConfig

      public boolean hasManagerConfig()
       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
      Specified by:
      hasManagerConfig in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      Whether the managerConfig field is set.
    • getManagerConfig

      public AsyncFileManagerConfig getManagerConfig()
       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
      Specified by:
      getManagerConfig in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The managerConfig.
    • setManagerConfig

       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
    • setManagerConfig

      public FileSystemHttpCacheV2Config.Builder setManagerConfig(AsyncFileManagerConfig.Builder builderForValue)
       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
    • mergeManagerConfig

       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
    • clearManagerConfig

      public FileSystemHttpCacheV2Config.Builder clearManagerConfig()
       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
    • getManagerConfigBuilder

      public AsyncFileManagerConfig.Builder getManagerConfigBuilder()
       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
    • getManagerConfigOrBuilder

      public AsyncFileManagerConfigOrBuilder getManagerConfigOrBuilder()
       Configuration of a manager for how the file system is used asynchronously.
       
      .envoy.extensions.common.async_files.v3.AsyncFileManagerConfig manager_config = 1 [(.validate.rules) = { ... }
      Specified by:
      getManagerConfigOrBuilder in interface FileSystemHttpCacheV2ConfigOrBuilder
    • getCachePath

      public String getCachePath()
       Path at which the cache files will be stored.
      
       This also doubles as the unique identifier for a cache, so a cache can be shared
       between different routes, or separate paths can be used to specify separate caches.
      
       If the same ``cache_path`` is used in more than one ``CacheV2Config``, the rest of the
       ``FileSystemHttpCacheV2Config`` must also match, and will refer to the same cache
       instance.
       
      string cache_path = 2 [(.validate.rules) = { ... }
      Specified by:
      getCachePath in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The cachePath.
    • getCachePathBytes

      public com.google.protobuf.ByteString getCachePathBytes()
       Path at which the cache files will be stored.
      
       This also doubles as the unique identifier for a cache, so a cache can be shared
       between different routes, or separate paths can be used to specify separate caches.
      
       If the same ``cache_path`` is used in more than one ``CacheV2Config``, the rest of the
       ``FileSystemHttpCacheV2Config`` must also match, and will refer to the same cache
       instance.
       
      string cache_path = 2 [(.validate.rules) = { ... }
      Specified by:
      getCachePathBytes in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The bytes for cachePath.
    • setCachePath

      public FileSystemHttpCacheV2Config.Builder setCachePath(String value)
       Path at which the cache files will be stored.
      
       This also doubles as the unique identifier for a cache, so a cache can be shared
       between different routes, or separate paths can be used to specify separate caches.
      
       If the same ``cache_path`` is used in more than one ``CacheV2Config``, the rest of the
       ``FileSystemHttpCacheV2Config`` must also match, and will refer to the same cache
       instance.
       
      string cache_path = 2 [(.validate.rules) = { ... }
      Parameters:
      value - The cachePath to set.
      Returns:
      This builder for chaining.
    • clearCachePath

      public FileSystemHttpCacheV2Config.Builder clearCachePath()
       Path at which the cache files will be stored.
      
       This also doubles as the unique identifier for a cache, so a cache can be shared
       between different routes, or separate paths can be used to specify separate caches.
      
       If the same ``cache_path`` is used in more than one ``CacheV2Config``, the rest of the
       ``FileSystemHttpCacheV2Config`` must also match, and will refer to the same cache
       instance.
       
      string cache_path = 2 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setCachePathBytes

      public FileSystemHttpCacheV2Config.Builder setCachePathBytes(com.google.protobuf.ByteString value)
       Path at which the cache files will be stored.
      
       This also doubles as the unique identifier for a cache, so a cache can be shared
       between different routes, or separate paths can be used to specify separate caches.
      
       If the same ``cache_path`` is used in more than one ``CacheV2Config``, the rest of the
       ``FileSystemHttpCacheV2Config`` must also match, and will refer to the same cache
       instance.
       
      string cache_path = 2 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for cachePath to set.
      Returns:
      This builder for chaining.
    • hasMaxCacheSizeBytes

      public boolean hasMaxCacheSizeBytes()
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
      Specified by:
      hasMaxCacheSizeBytes in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      Whether the maxCacheSizeBytes field is set.
    • getMaxCacheSizeBytes

      public com.google.protobuf.UInt64Value getMaxCacheSizeBytes()
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
      Specified by:
      getMaxCacheSizeBytes in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The maxCacheSizeBytes.
    • setMaxCacheSizeBytes

      public FileSystemHttpCacheV2Config.Builder setMaxCacheSizeBytes(com.google.protobuf.UInt64Value value)
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
    • setMaxCacheSizeBytes

      public FileSystemHttpCacheV2Config.Builder setMaxCacheSizeBytes(com.google.protobuf.UInt64Value.Builder builderForValue)
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
    • mergeMaxCacheSizeBytes

      public FileSystemHttpCacheV2Config.Builder mergeMaxCacheSizeBytes(com.google.protobuf.UInt64Value value)
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
    • clearMaxCacheSizeBytes

      public FileSystemHttpCacheV2Config.Builder clearMaxCacheSizeBytes()
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
    • getMaxCacheSizeBytesBuilder

      public com.google.protobuf.UInt64Value.Builder getMaxCacheSizeBytesBuilder()
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
    • getMaxCacheSizeBytesOrBuilder

      public com.google.protobuf.UInt64ValueOrBuilder getMaxCacheSizeBytesOrBuilder()
       The maximum size of the cache in bytes - when reached, cache eviction is triggered.
      
       This is measured as the sum of file sizes, such that it includes headers, trailers,
       and metadata, but does not include e.g. file system overhead and block size padding.
      
       If unset there is no limit except file system failure.
       
      .google.protobuf.UInt64Value max_cache_size_bytes = 3;
      Specified by:
      getMaxCacheSizeBytesOrBuilder in interface FileSystemHttpCacheV2ConfigOrBuilder
    • hasMaxIndividualCacheEntrySizeBytes

      public boolean hasMaxIndividualCacheEntrySizeBytes()
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
      Specified by:
      hasMaxIndividualCacheEntrySizeBytes in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      Whether the maxIndividualCacheEntrySizeBytes field is set.
    • getMaxIndividualCacheEntrySizeBytes

      public com.google.protobuf.UInt64Value getMaxIndividualCacheEntrySizeBytes()
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
      Specified by:
      getMaxIndividualCacheEntrySizeBytes in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The maxIndividualCacheEntrySizeBytes.
    • setMaxIndividualCacheEntrySizeBytes

      public FileSystemHttpCacheV2Config.Builder setMaxIndividualCacheEntrySizeBytes(com.google.protobuf.UInt64Value value)
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
    • setMaxIndividualCacheEntrySizeBytes

      public FileSystemHttpCacheV2Config.Builder setMaxIndividualCacheEntrySizeBytes(com.google.protobuf.UInt64Value.Builder builderForValue)
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
    • mergeMaxIndividualCacheEntrySizeBytes

      public FileSystemHttpCacheV2Config.Builder mergeMaxIndividualCacheEntrySizeBytes(com.google.protobuf.UInt64Value value)
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
    • clearMaxIndividualCacheEntrySizeBytes

      public FileSystemHttpCacheV2Config.Builder clearMaxIndividualCacheEntrySizeBytes()
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
    • getMaxIndividualCacheEntrySizeBytesBuilder

      public com.google.protobuf.UInt64Value.Builder getMaxIndividualCacheEntrySizeBytesBuilder()
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
    • getMaxIndividualCacheEntrySizeBytesOrBuilder

      public com.google.protobuf.UInt64ValueOrBuilder getMaxIndividualCacheEntrySizeBytesOrBuilder()
       The maximum size of a cache entry in bytes - larger responses will not be cached.
      
       This is measured as the file size for the cache entry, such that it includes
       headers, trailers, and metadata.
      
       If unset there is no limit.
      
       [#not-implemented-hide:]
       
      .google.protobuf.UInt64Value max_individual_cache_entry_size_bytes = 4;
      Specified by:
      getMaxIndividualCacheEntrySizeBytesOrBuilder in interface FileSystemHttpCacheV2ConfigOrBuilder
    • hasMaxCacheEntryCount

      public boolean hasMaxCacheEntryCount()
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
      Specified by:
      hasMaxCacheEntryCount in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      Whether the maxCacheEntryCount field is set.
    • getMaxCacheEntryCount

      public com.google.protobuf.UInt64Value getMaxCacheEntryCount()
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
      Specified by:
      getMaxCacheEntryCount in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The maxCacheEntryCount.
    • setMaxCacheEntryCount

      public FileSystemHttpCacheV2Config.Builder setMaxCacheEntryCount(com.google.protobuf.UInt64Value value)
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
    • setMaxCacheEntryCount

      public FileSystemHttpCacheV2Config.Builder setMaxCacheEntryCount(com.google.protobuf.UInt64Value.Builder builderForValue)
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
    • mergeMaxCacheEntryCount

      public FileSystemHttpCacheV2Config.Builder mergeMaxCacheEntryCount(com.google.protobuf.UInt64Value value)
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
    • clearMaxCacheEntryCount

      public FileSystemHttpCacheV2Config.Builder clearMaxCacheEntryCount()
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
    • getMaxCacheEntryCountBuilder

      public com.google.protobuf.UInt64Value.Builder getMaxCacheEntryCountBuilder()
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
    • getMaxCacheEntryCountOrBuilder

      public com.google.protobuf.UInt64ValueOrBuilder getMaxCacheEntryCountOrBuilder()
       The maximum number of cache entries - when reached, cache eviction is triggered.
      
       If unset there is no limit.
       
      .google.protobuf.UInt64Value max_cache_entry_count = 5;
      Specified by:
      getMaxCacheEntryCountOrBuilder in interface FileSystemHttpCacheV2ConfigOrBuilder
    • getCacheSubdivisions

      public int getCacheSubdivisions()
       A number of folders into which to subdivide the cache.
      
       Setting this can help with performance in file systems where a large number of inodes
       in a single branch degrades performance. The optimal value in that case would be
       ``sqrt(expected_cache_entry_count)``.
      
       On file systems that perform well with many inodes, the default value of 1 should be used.
      
       [#not-implemented-hide:]
       
      uint32 cache_subdivisions = 6;
      Specified by:
      getCacheSubdivisions in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The cacheSubdivisions.
    • setCacheSubdivisions

      public FileSystemHttpCacheV2Config.Builder setCacheSubdivisions(int value)
       A number of folders into which to subdivide the cache.
      
       Setting this can help with performance in file systems where a large number of inodes
       in a single branch degrades performance. The optimal value in that case would be
       ``sqrt(expected_cache_entry_count)``.
      
       On file systems that perform well with many inodes, the default value of 1 should be used.
      
       [#not-implemented-hide:]
       
      uint32 cache_subdivisions = 6;
      Parameters:
      value - The cacheSubdivisions to set.
      Returns:
      This builder for chaining.
    • clearCacheSubdivisions

      public FileSystemHttpCacheV2Config.Builder clearCacheSubdivisions()
       A number of folders into which to subdivide the cache.
      
       Setting this can help with performance in file systems where a large number of inodes
       in a single branch degrades performance. The optimal value in that case would be
       ``sqrt(expected_cache_entry_count)``.
      
       On file systems that perform well with many inodes, the default value of 1 should be used.
      
       [#not-implemented-hide:]
       
      uint32 cache_subdivisions = 6;
      Returns:
      This builder for chaining.
    • getEvictFraction

      public float getEvictFraction()
       The amount of the maximum cache size or count to evict when cache eviction is
       triggered. For example, if ``max_cache_size_bytes`` is 10000000 and ``evict_fraction``
       is 0.2, then when the cache exceeds 10MB, entries will be evicted until the cache size is
       less than or equal to 8MB.
      
       The default value of 0 means when the cache exceeds 10MB, entries will be evicted only
       until the cache is less than or equal to 10MB.
      
       Evicting a larger fraction will mean the eviction thread will run less often (sparing
       CPU load) at the cost of more cache misses due to the extra evicted entries.
      
       [#not-implemented-hide:]
       
      float evict_fraction = 7;
      Specified by:
      getEvictFraction in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The evictFraction.
    • setEvictFraction

      public FileSystemHttpCacheV2Config.Builder setEvictFraction(float value)
       The amount of the maximum cache size or count to evict when cache eviction is
       triggered. For example, if ``max_cache_size_bytes`` is 10000000 and ``evict_fraction``
       is 0.2, then when the cache exceeds 10MB, entries will be evicted until the cache size is
       less than or equal to 8MB.
      
       The default value of 0 means when the cache exceeds 10MB, entries will be evicted only
       until the cache is less than or equal to 10MB.
      
       Evicting a larger fraction will mean the eviction thread will run less often (sparing
       CPU load) at the cost of more cache misses due to the extra evicted entries.
      
       [#not-implemented-hide:]
       
      float evict_fraction = 7;
      Parameters:
      value - The evictFraction to set.
      Returns:
      This builder for chaining.
    • clearEvictFraction

      public FileSystemHttpCacheV2Config.Builder clearEvictFraction()
       The amount of the maximum cache size or count to evict when cache eviction is
       triggered. For example, if ``max_cache_size_bytes`` is 10000000 and ``evict_fraction``
       is 0.2, then when the cache exceeds 10MB, entries will be evicted until the cache size is
       less than or equal to 8MB.
      
       The default value of 0 means when the cache exceeds 10MB, entries will be evicted only
       until the cache is less than or equal to 10MB.
      
       Evicting a larger fraction will mean the eviction thread will run less often (sparing
       CPU load) at the cost of more cache misses due to the extra evicted entries.
      
       [#not-implemented-hide:]
       
      float evict_fraction = 7;
      Returns:
      This builder for chaining.
    • hasMaxEvictionPeriod

      public boolean hasMaxEvictionPeriod()
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
      Specified by:
      hasMaxEvictionPeriod in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      Whether the maxEvictionPeriod field is set.
    • getMaxEvictionPeriod

      public com.google.protobuf.Duration getMaxEvictionPeriod()
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
      Specified by:
      getMaxEvictionPeriod in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The maxEvictionPeriod.
    • setMaxEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder setMaxEvictionPeriod(com.google.protobuf.Duration value)
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
    • setMaxEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder setMaxEvictionPeriod(com.google.protobuf.Duration.Builder builderForValue)
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
    • mergeMaxEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder mergeMaxEvictionPeriod(com.google.protobuf.Duration value)
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
    • clearMaxEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder clearMaxEvictionPeriod()
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
    • getMaxEvictionPeriodBuilder

      public com.google.protobuf.Duration.Builder getMaxEvictionPeriodBuilder()
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
    • getMaxEvictionPeriodOrBuilder

      public com.google.protobuf.DurationOrBuilder getMaxEvictionPeriodOrBuilder()
       The longest amount of time to wait before running a cache eviction pass. An eviction
       pass may not necessarily remove any files, but it will update the cache state to match
       the on-disk state. This can be important if multiple instances are accessing the same
       cache in parallel. (e.g. if two instances each independently added non-overlapping 10MB
       of content to a cache with a 15MB limit, neither instance would be aware that the limit
       was exceeded without this synchronizing pass.)
      
       If an eviction pass has not happened within this duration, the eviction thread will
       be awoken and perform an eviction pass.
      
       If unset, there will be no eviction passes except those triggered by cache limits.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration max_eviction_period = 8;
      Specified by:
      getMaxEvictionPeriodOrBuilder in interface FileSystemHttpCacheV2ConfigOrBuilder
    • hasMinEvictionPeriod

      public boolean hasMinEvictionPeriod()
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
      Specified by:
      hasMinEvictionPeriod in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      Whether the minEvictionPeriod field is set.
    • getMinEvictionPeriod

      public com.google.protobuf.Duration getMinEvictionPeriod()
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
      Specified by:
      getMinEvictionPeriod in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The minEvictionPeriod.
    • setMinEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder setMinEvictionPeriod(com.google.protobuf.Duration value)
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
    • setMinEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder setMinEvictionPeriod(com.google.protobuf.Duration.Builder builderForValue)
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
    • mergeMinEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder mergeMinEvictionPeriod(com.google.protobuf.Duration value)
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
    • clearMinEvictionPeriod

      public FileSystemHttpCacheV2Config.Builder clearMinEvictionPeriod()
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
    • getMinEvictionPeriodBuilder

      public com.google.protobuf.Duration.Builder getMinEvictionPeriodBuilder()
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
    • getMinEvictionPeriodOrBuilder

      public com.google.protobuf.DurationOrBuilder getMinEvictionPeriodOrBuilder()
       The shortest amount of time between cache eviction passes. This can be used to reduce
       eviction churn, if your cache max size can be flexible. If a cache eviction pass already
       occurred more recently than this period when another would be triggered, that new
       pass is cancelled.
      
       This means the cache can potentially grow beyond ``max_cache_size_bytes`` by as much as
       can be written within the duration specified.
      
       Generally you would use *either* ``min_eviction_period`` *or* ``evict_fraction`` to
       reduce churn. Both together will work but since they're both aiming for the same goal,
       it's simpler not to.
      
       [#not-implemented-hide:]
       
      .google.protobuf.Duration min_eviction_period = 9;
      Specified by:
      getMinEvictionPeriodOrBuilder in interface FileSystemHttpCacheV2ConfigOrBuilder
    • getCreateCachePath

      public boolean getCreateCachePath()
       If true, and the cache path does not exist, attempt to create the cache path, including
       any missing directories leading up to it. On failure, the config is rejected.
      
       If false, and the cache path does not exist, the config is rejected.
      
       [#not-implemented-hide:]
       
      bool create_cache_path = 10;
      Specified by:
      getCreateCachePath in interface FileSystemHttpCacheV2ConfigOrBuilder
      Returns:
      The createCachePath.
    • setCreateCachePath

      public FileSystemHttpCacheV2Config.Builder setCreateCachePath(boolean value)
       If true, and the cache path does not exist, attempt to create the cache path, including
       any missing directories leading up to it. On failure, the config is rejected.
      
       If false, and the cache path does not exist, the config is rejected.
      
       [#not-implemented-hide:]
       
      bool create_cache_path = 10;
      Parameters:
      value - The createCachePath to set.
      Returns:
      This builder for chaining.
    • clearCreateCachePath

      public FileSystemHttpCacheV2Config.Builder clearCreateCachePath()
       If true, and the cache path does not exist, attempt to create the cache path, including
       any missing directories leading up to it. On failure, the config is rejected.
      
       If false, and the cache path does not exist, the config is rejected.
      
       [#not-implemented-hide:]
       
      bool create_cache_path = 10;
      Returns:
      This builder for chaining.
    • setUnknownFields

      public final FileSystemHttpCacheV2Config.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>
    • mergeUnknownFields

      public final FileSystemHttpCacheV2Config.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<FileSystemHttpCacheV2Config.Builder>