Class DynamicModuleUdpListenerFilter

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
io.envoyproxy.envoy.extensions.filters.udp.dynamic_modules.v3.DynamicModuleUdpListenerFilter
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, DynamicModuleUdpListenerFilterOrBuilder, Serializable

public final class DynamicModuleUdpListenerFilter extends com.google.protobuf.GeneratedMessageV3 implements DynamicModuleUdpListenerFilterOrBuilder
 Configuration for the Dynamic Modules UDP listener filter. This filter allows loading shared object
 files that can be loaded via ``dlopen`` to extend the UDP listener filter chain.

 A module can be loaded by multiple UDP listener filters; the module is loaded only once and shared
 across multiple filters.
 
Protobuf type envoy.extensions.filters.udp.dynamic_modules.v3.DynamicModuleUdpListenerFilter
See Also:
  • Field Details

    • DYNAMIC_MODULE_CONFIG_FIELD_NUMBER

      public static final int DYNAMIC_MODULE_CONFIG_FIELD_NUMBER
      See Also:
    • FILTER_NAME_FIELD_NUMBER

      public static final int FILTER_NAME_FIELD_NUMBER
      See Also:
    • FILTER_CONFIG_FIELD_NUMBER

      public static final int FILTER_CONFIG_FIELD_NUMBER
      See Also:
  • Method Details

    • newInstance

      protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
      Overrides:
      newInstance in class com.google.protobuf.GeneratedMessageV3
    • 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
    • hasDynamicModuleConfig

      public boolean hasDynamicModuleConfig()
       Specifies the shared-object level configuration.
       
      .envoy.extensions.dynamic_modules.v3.DynamicModuleConfig dynamic_module_config = 1;
      Specified by:
      hasDynamicModuleConfig in interface DynamicModuleUdpListenerFilterOrBuilder
      Returns:
      Whether the dynamicModuleConfig field is set.
    • getDynamicModuleConfig

      public DynamicModuleConfig getDynamicModuleConfig()
       Specifies the shared-object level configuration.
       
      .envoy.extensions.dynamic_modules.v3.DynamicModuleConfig dynamic_module_config = 1;
      Specified by:
      getDynamicModuleConfig in interface DynamicModuleUdpListenerFilterOrBuilder
      Returns:
      The dynamicModuleConfig.
    • getDynamicModuleConfigOrBuilder

      public DynamicModuleConfigOrBuilder getDynamicModuleConfigOrBuilder()
       Specifies the shared-object level configuration.
       
      .envoy.extensions.dynamic_modules.v3.DynamicModuleConfig dynamic_module_config = 1;
      Specified by:
      getDynamicModuleConfigOrBuilder in interface DynamicModuleUdpListenerFilterOrBuilder
    • getFilterName

      public String getFilterName()
       The name for this filter configuration.
      
       This can be used to distinguish between different filter implementations inside a dynamic
       module. For example, a module can have completely different filter implementations. When Envoy
       receives this configuration, it passes the ``filter_name`` to the dynamic module's UDP listener
       filter config init function together with the ``filter_config``. That way a module can decide
       which in-module filter implementation to use based on the name at load time.
       
      string filter_name = 2;
      Specified by:
      getFilterName in interface DynamicModuleUdpListenerFilterOrBuilder
      Returns:
      The filterName.
    • getFilterNameBytes

      public com.google.protobuf.ByteString getFilterNameBytes()
       The name for this filter configuration.
      
       This can be used to distinguish between different filter implementations inside a dynamic
       module. For example, a module can have completely different filter implementations. When Envoy
       receives this configuration, it passes the ``filter_name`` to the dynamic module's UDP listener
       filter config init function together with the ``filter_config``. That way a module can decide
       which in-module filter implementation to use based on the name at load time.
       
      string filter_name = 2;
      Specified by:
      getFilterNameBytes in interface DynamicModuleUdpListenerFilterOrBuilder
      Returns:
      The bytes for filterName.
    • hasFilterConfig

      public boolean hasFilterConfig()
       The configuration for the filter chosen by ``filter_name``.
      
       This is passed to the module's UDP listener filter initialization function. Together with the
       ``filter_name``, the module can decide which in-module filter implementation to use and
       fine-tune the behavior of the filter.
      
       For example, if a module has two filter implementations, one for echo and one for rate
       limiting, ``filter_name`` is used to choose either echo or rate limiting. The
       ``filter_config`` can be used to configure the echo behavior or the rate limiting parameters.
      
       ``google.protobuf.Struct`` is serialized as JSON before passing it to the module.
       ``google.protobuf.BytesValue`` and ``google.protobuf.StringValue`` are passed directly
       without the wrapper.
      
       .. code-block:: yaml
      
        # Passing a string value
        filter_config:
          "@type": "type.googleapis.com/google.protobuf.StringValue"
          value: hello
      
        # Passing raw bytes
        filter_config:
          "@type": "type.googleapis.com/google.protobuf.BytesValue"
          value: aGVsbG8=  # echo -n "hello" | base64
       
      .google.protobuf.Any filter_config = 3;
      Specified by:
      hasFilterConfig in interface DynamicModuleUdpListenerFilterOrBuilder
      Returns:
      Whether the filterConfig field is set.
    • getFilterConfig

      public com.google.protobuf.Any getFilterConfig()
       The configuration for the filter chosen by ``filter_name``.
      
       This is passed to the module's UDP listener filter initialization function. Together with the
       ``filter_name``, the module can decide which in-module filter implementation to use and
       fine-tune the behavior of the filter.
      
       For example, if a module has two filter implementations, one for echo and one for rate
       limiting, ``filter_name`` is used to choose either echo or rate limiting. The
       ``filter_config`` can be used to configure the echo behavior or the rate limiting parameters.
      
       ``google.protobuf.Struct`` is serialized as JSON before passing it to the module.
       ``google.protobuf.BytesValue`` and ``google.protobuf.StringValue`` are passed directly
       without the wrapper.
      
       .. code-block:: yaml
      
        # Passing a string value
        filter_config:
          "@type": "type.googleapis.com/google.protobuf.StringValue"
          value: hello
      
        # Passing raw bytes
        filter_config:
          "@type": "type.googleapis.com/google.protobuf.BytesValue"
          value: aGVsbG8=  # echo -n "hello" | base64
       
      .google.protobuf.Any filter_config = 3;
      Specified by:
      getFilterConfig in interface DynamicModuleUdpListenerFilterOrBuilder
      Returns:
      The filterConfig.
    • getFilterConfigOrBuilder

      public com.google.protobuf.AnyOrBuilder getFilterConfigOrBuilder()
       The configuration for the filter chosen by ``filter_name``.
      
       This is passed to the module's UDP listener filter initialization function. Together with the
       ``filter_name``, the module can decide which in-module filter implementation to use and
       fine-tune the behavior of the filter.
      
       For example, if a module has two filter implementations, one for echo and one for rate
       limiting, ``filter_name`` is used to choose either echo or rate limiting. The
       ``filter_config`` can be used to configure the echo behavior or the rate limiting parameters.
      
       ``google.protobuf.Struct`` is serialized as JSON before passing it to the module.
       ``google.protobuf.BytesValue`` and ``google.protobuf.StringValue`` are passed directly
       without the wrapper.
      
       .. code-block:: yaml
      
        # Passing a string value
        filter_config:
          "@type": "type.googleapis.com/google.protobuf.StringValue"
          value: hello
      
        # Passing raw bytes
        filter_config:
          "@type": "type.googleapis.com/google.protobuf.BytesValue"
          value: aGVsbG8=  # echo -n "hello" | base64
       
      .google.protobuf.Any filter_config = 3;
      Specified by:
      getFilterConfigOrBuilder in interface DynamicModuleUdpListenerFilterOrBuilder
    • isInitialized

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

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

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

      public boolean equals(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 DynamicModuleUdpListenerFilter parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static DynamicModuleUdpListenerFilter parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

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

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

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

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

      public static DynamicModuleUdpListenerFilter parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

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

      public static DynamicModuleUdpListenerFilter parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

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

      public static DynamicModuleUdpListenerFilter parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

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

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

      public static DynamicModuleUdpListenerFilter.Builder newBuilder()
    • newBuilder

    • toBuilder

      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected DynamicModuleUdpListenerFilter.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
      Specified by:
      newBuilderForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstance

      public static DynamicModuleUdpListenerFilter getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<DynamicModuleUdpListenerFilter> parser()
    • getParserForType

      public com.google.protobuf.Parser<DynamicModuleUdpListenerFilter> 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.GeneratedMessageV3
    • getDefaultInstanceForType

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