Class PathConfigSource.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<PathConfigSource.Builder>
com.google.protobuf.GeneratedMessage.Builder<PathConfigSource.Builder>
io.envoyproxy.envoy.config.core.v3.PathConfigSource.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, PathConfigSourceOrBuilder, Cloneable
Enclosing class:
PathConfigSource

public static final class PathConfigSource.Builder extends com.google.protobuf.GeneratedMessage.Builder<PathConfigSource.Builder> implements PathConfigSourceOrBuilder
 Local filesystem path configuration source.
 
Protobuf type envoy.config.core.v3.PathConfigSource
  • Field Details

  • Constructor Details

    • Builder

      private Builder()
    • Builder

      private Builder(com.google.protobuf.AbstractMessage.BuilderParent parent)
  • Method Details

    • getDescriptor

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

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<PathConfigSource.Builder>
    • maybeForceBuilderInitialization

      private void maybeForceBuilderInitialization()
    • clear

      public PathConfigSource.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.GeneratedMessage.Builder<PathConfigSource.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.GeneratedMessage.Builder<PathConfigSource.Builder>
    • getDefaultInstanceForType

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

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

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

      private void buildPartial0(PathConfigSource result)
    • mergeFrom

      public PathConfigSource.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<PathConfigSource.Builder>
    • mergeFrom

      public PathConfigSource.Builder mergeFrom(PathConfigSource other)
    • isInitialized

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

      public PathConfigSource.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<PathConfigSource.Builder>
      Throws:
      IOException
    • getPath

      public String getPath()
       Path on the filesystem to source and watch for configuration updates.
       When sourcing configuration for a :ref:`secret <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.Secret>`,
       the certificate and key files are also watched for updates.
      
       .. note::
      
       The path to the source must exist at config load time.
      
       .. note::
      
       If ``watched_directory`` is *not* configured, Envoy will watch the file path for *moves*.
       This is because in general only moves are atomic. The same method of swapping files as is
       demonstrated in the :ref:`runtime documentation <config_runtime_symbolic_link_swap>` can be
       used here also. If ``watched_directory`` is configured, no watch will be placed directly on
       this path. Instead, the configured ``watched_directory`` will be used to trigger reloads of
       this path. This is required in certain deployment scenarios. See below for more information.
       
      string path = 1 [(.validate.rules) = { ... }
      Specified by:
      getPath in interface PathConfigSourceOrBuilder
      Returns:
      The path.
    • getPathBytes

      public com.google.protobuf.ByteString getPathBytes()
       Path on the filesystem to source and watch for configuration updates.
       When sourcing configuration for a :ref:`secret <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.Secret>`,
       the certificate and key files are also watched for updates.
      
       .. note::
      
       The path to the source must exist at config load time.
      
       .. note::
      
       If ``watched_directory`` is *not* configured, Envoy will watch the file path for *moves*.
       This is because in general only moves are atomic. The same method of swapping files as is
       demonstrated in the :ref:`runtime documentation <config_runtime_symbolic_link_swap>` can be
       used here also. If ``watched_directory`` is configured, no watch will be placed directly on
       this path. Instead, the configured ``watched_directory`` will be used to trigger reloads of
       this path. This is required in certain deployment scenarios. See below for more information.
       
      string path = 1 [(.validate.rules) = { ... }
      Specified by:
      getPathBytes in interface PathConfigSourceOrBuilder
      Returns:
      The bytes for path.
    • setPath

      public PathConfigSource.Builder setPath(String value)
       Path on the filesystem to source and watch for configuration updates.
       When sourcing configuration for a :ref:`secret <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.Secret>`,
       the certificate and key files are also watched for updates.
      
       .. note::
      
       The path to the source must exist at config load time.
      
       .. note::
      
       If ``watched_directory`` is *not* configured, Envoy will watch the file path for *moves*.
       This is because in general only moves are atomic. The same method of swapping files as is
       demonstrated in the :ref:`runtime documentation <config_runtime_symbolic_link_swap>` can be
       used here also. If ``watched_directory`` is configured, no watch will be placed directly on
       this path. Instead, the configured ``watched_directory`` will be used to trigger reloads of
       this path. This is required in certain deployment scenarios. See below for more information.
       
      string path = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The path to set.
      Returns:
      This builder for chaining.
    • clearPath

      public PathConfigSource.Builder clearPath()
       Path on the filesystem to source and watch for configuration updates.
       When sourcing configuration for a :ref:`secret <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.Secret>`,
       the certificate and key files are also watched for updates.
      
       .. note::
      
       The path to the source must exist at config load time.
      
       .. note::
      
       If ``watched_directory`` is *not* configured, Envoy will watch the file path for *moves*.
       This is because in general only moves are atomic. The same method of swapping files as is
       demonstrated in the :ref:`runtime documentation <config_runtime_symbolic_link_swap>` can be
       used here also. If ``watched_directory`` is configured, no watch will be placed directly on
       this path. Instead, the configured ``watched_directory`` will be used to trigger reloads of
       this path. This is required in certain deployment scenarios. See below for more information.
       
      string path = 1 [(.validate.rules) = { ... }
      Returns:
      This builder for chaining.
    • setPathBytes

      public PathConfigSource.Builder setPathBytes(com.google.protobuf.ByteString value)
       Path on the filesystem to source and watch for configuration updates.
       When sourcing configuration for a :ref:`secret <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.Secret>`,
       the certificate and key files are also watched for updates.
      
       .. note::
      
       The path to the source must exist at config load time.
      
       .. note::
      
       If ``watched_directory`` is *not* configured, Envoy will watch the file path for *moves*.
       This is because in general only moves are atomic. The same method of swapping files as is
       demonstrated in the :ref:`runtime documentation <config_runtime_symbolic_link_swap>` can be
       used here also. If ``watched_directory`` is configured, no watch will be placed directly on
       this path. Instead, the configured ``watched_directory`` will be used to trigger reloads of
       this path. This is required in certain deployment scenarios. See below for more information.
       
      string path = 1 [(.validate.rules) = { ... }
      Parameters:
      value - The bytes for path to set.
      Returns:
      This builder for chaining.
    • hasWatchedDirectory

      public boolean hasWatchedDirectory()
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
      Specified by:
      hasWatchedDirectory in interface PathConfigSourceOrBuilder
      Returns:
      Whether the watchedDirectory field is set.
    • getWatchedDirectory

      public WatchedDirectory getWatchedDirectory()
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
      Specified by:
      getWatchedDirectory in interface PathConfigSourceOrBuilder
      Returns:
      The watchedDirectory.
    • setWatchedDirectory

      public PathConfigSource.Builder setWatchedDirectory(WatchedDirectory value)
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
    • setWatchedDirectory

      public PathConfigSource.Builder setWatchedDirectory(WatchedDirectory.Builder builderForValue)
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
    • mergeWatchedDirectory

      public PathConfigSource.Builder mergeWatchedDirectory(WatchedDirectory value)
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
    • clearWatchedDirectory

      public PathConfigSource.Builder clearWatchedDirectory()
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
    • getWatchedDirectoryBuilder

      public WatchedDirectory.Builder getWatchedDirectoryBuilder()
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
    • getWatchedDirectoryOrBuilder

      public WatchedDirectoryOrBuilder getWatchedDirectoryOrBuilder()
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;
      Specified by:
      getWatchedDirectoryOrBuilder in interface PathConfigSourceOrBuilder
    • internalGetWatchedDirectoryFieldBuilder

      private com.google.protobuf.SingleFieldBuilder<WatchedDirectory,WatchedDirectory.Builder,WatchedDirectoryOrBuilder> internalGetWatchedDirectoryFieldBuilder()
       If configured, this directory will be watched for *moves*. When an entry in this directory is
       moved to, the ``path`` will be reloaded. This is required in certain deployment scenarios.
      
       Specifically, if trying to load an xDS resource using a
       `Kubernetes ConfigMap <https://kubernetes.io/docs/concepts/configuration/configmap/>`_, the
       following configuration might be used:
       1. Store xds.yaml inside a ConfigMap.
       2. Mount the ConfigMap to ``/config_map/xds``
       3. Configure path ``/config_map/xds/xds.yaml``
       4. Configure watched directory ``/config_map/xds``
      
       The above configuration will ensure that Envoy watches the owning directory for moves which is
       required due to how Kubernetes manages ConfigMap symbolic links during atomic updates.
       
      .envoy.config.core.v3.WatchedDirectory watched_directory = 2;