Class PathConfigSource

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, PathConfigSourceOrBuilder, java.io.Serializable

    public final class PathConfigSource
    extends com.google.protobuf.GeneratedMessage
    implements PathConfigSourceOrBuilder
     Local filesystem path configuration source.
     
    Protobuf type envoy.config.core.v3.PathConfigSource
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  PathConfigSource.Builder
      Local filesystem path configuration source.
      • Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage

        com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,​BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,​BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,​T extends java.lang.Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter
      • Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage

        com.google.protobuf.AbstractMessage.BuilderParent
      • Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

        com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private PathConfigSource()  
      private PathConfigSource​(com.google.protobuf.GeneratedMessage.Builder<?> builder)  
    • Field Detail

      • bitField0_

        private int bitField0_
      • path_

        private volatile java.lang.Object path_
      • WATCHED_DIRECTORY_FIELD_NUMBER

        public static final int WATCHED_DIRECTORY_FIELD_NUMBER
        See Also:
        Constant Field Values
      • memoizedIsInitialized

        private byte memoizedIsInitialized
      • PARSER

        private static final com.google.protobuf.Parser<PathConfigSource> PARSER
    • Constructor Detail

      • PathConfigSource

        private PathConfigSource​(com.google.protobuf.GeneratedMessage.Builder<?> builder)
      • PathConfigSource

        private PathConfigSource()
    • Method Detail

      • 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
      • getPath

        public java.lang.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.
      • 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.
      • 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
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessage
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws java.io.IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessage
        Throws:
        java.io.IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessage
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static PathConfigSource parseFrom​(java.nio.ByteBuffer data)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static PathConfigSource parseFrom​(java.nio.ByteBuffer data,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static PathConfigSource parseFrom​(com.google.protobuf.ByteString data)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static PathConfigSource parseFrom​(com.google.protobuf.ByteString data,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static PathConfigSource parseFrom​(byte[] data)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static PathConfigSource parseFrom​(byte[] data,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static PathConfigSource parseFrom​(java.io.InputStream input)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static PathConfigSource parseFrom​(java.io.InputStream input,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static PathConfigSource parseDelimitedFrom​(java.io.InputStream input)
                                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static PathConfigSource parseDelimitedFrom​(java.io.InputStream input,
                                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static PathConfigSource parseFrom​(com.google.protobuf.CodedInputStream input)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static PathConfigSource parseFrom​(com.google.protobuf.CodedInputStream input,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • newBuilderForType

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

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

        protected PathConfigSource.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)
        Overrides:
        newBuilderForType in class com.google.protobuf.AbstractMessage
      • getParserForType

        public com.google.protobuf.Parser<PathConfigSource> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessage
      • getDefaultInstanceForType

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