Class SocketOption

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

    public final class SocketOption
    extends com.google.protobuf.GeneratedMessage
    implements SocketOptionOrBuilder
     Generic socket option message. This would be used to set socket options that
     might not exist in upstream kernels or precompiled Envoy binaries.
    
     For example:
    
     .. code-block:: json
    
     {
     "description": "support tcp keep alive",
     "state": 0,
     "level": 1,
     "name": 9,
     "int_value": 1,
     }
    
     1 means SOL_SOCKET and 9 means SO_KEEPALIVE on Linux.
     With the above configuration, `TCP Keep-Alives <https://www.freesoft.org/CIE/RFC/1122/114.htm>`_
     can be enabled in socket with Linux, which can be used in
     :ref:`listener's<envoy_v3_api_field_config.listener.v3.Listener.socket_options>` or
     :ref:`admin's <envoy_v3_api_field_config.bootstrap.v3.Admin.socket_options>` socket_options etc.
    
     It should be noted that the name or level may have different values on different platforms.
     [#next-free-field: 7]
     
    Protobuf type envoy.config.core.v3.SocketOption
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  SocketOption.Builder
      Generic socket option message.
      static class  SocketOption.SocketState
      Protobuf enum envoy.config.core.v3.SocketOption.SocketState
      static class  SocketOption.ValueCase  
      • 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 SocketOption()  
      private SocketOption​(com.google.protobuf.GeneratedMessage.Builder<?> builder)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)  
      com.google.protobuf.ByteString getBufValue()
      Otherwise it's a byte buffer.
      static SocketOption getDefaultInstance()  
      SocketOption getDefaultInstanceForType()  
      java.lang.String getDescription()
      An optional name to give this socket option for debugging, etc.
      com.google.protobuf.ByteString getDescriptionBytes()
      An optional name to give this socket option for debugging, etc.
      static com.google.protobuf.Descriptors.Descriptor getDescriptor()  
      long getIntValue()
      Because many sockopts take an int value.
      long getLevel()
      Corresponding to the level value passed to setsockopt, such as IPPROTO_TCP
      long getName()
      The numeric name as passed to setsockopt
      com.google.protobuf.Parser<SocketOption> getParserForType()  
      int getSerializedSize()  
      SocketOption.SocketState getState()
      The state in which the option will be applied.
      int getStateValue()
      The state in which the option will be applied.
      SocketOption.ValueCase getValueCase()  
      boolean hasBufValue()
      Otherwise it's a byte buffer.
      int hashCode()  
      boolean hasIntValue()
      Because many sockopts take an int value.
      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()  
      boolean isInitialized()  
      static SocketOption.Builder newBuilder()  
      static SocketOption.Builder newBuilder​(SocketOption prototype)  
      SocketOption.Builder newBuilderForType()  
      protected SocketOption.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)  
      static SocketOption parseDelimitedFrom​(java.io.InputStream input)  
      static SocketOption parseDelimitedFrom​(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static SocketOption parseFrom​(byte[] data)  
      static SocketOption parseFrom​(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static SocketOption parseFrom​(com.google.protobuf.ByteString data)  
      static SocketOption parseFrom​(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static SocketOption parseFrom​(com.google.protobuf.CodedInputStream input)  
      static SocketOption parseFrom​(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static SocketOption parseFrom​(java.io.InputStream input)  
      static SocketOption parseFrom​(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static SocketOption parseFrom​(java.nio.ByteBuffer data)  
      static SocketOption parseFrom​(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      static com.google.protobuf.Parser<SocketOption> parser()  
      SocketOption.Builder toBuilder()  
      void writeTo​(com.google.protobuf.CodedOutputStream output)  
      • Methods inherited from class com.google.protobuf.GeneratedMessage

        canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
      • Methods inherited from class com.google.protobuf.AbstractMessage

        findInitializationErrors, getInitializationErrorString, hashFields, toString
      • Methods inherited from class com.google.protobuf.AbstractMessageLite

        addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface com.google.protobuf.MessageLite

        toByteArray, toByteString, writeDelimitedTo, writeTo
      • Methods inherited from interface com.google.protobuf.MessageOrBuilder

        findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
    • Field Detail

      • valueCase_

        private int valueCase_
      • value_

        private java.lang.Object value_
      • DESCRIPTION_FIELD_NUMBER

        public static final int DESCRIPTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • description_

        private volatile java.lang.Object description_
      • level_

        private long level_
      • name_

        private long name_
      • state_

        private int state_
      • memoizedIsInitialized

        private byte memoizedIsInitialized
      • DEFAULT_INSTANCE

        private static final SocketOption DEFAULT_INSTANCE
      • PARSER

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

      • SocketOption

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

        private SocketOption()
    • 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
      • getDescription

        public java.lang.String getDescription()
         An optional name to give this socket option for debugging, etc.
         Uniqueness is not required and no special meaning is assumed.
         
        string description = 1;
        Specified by:
        getDescription in interface SocketOptionOrBuilder
        Returns:
        The description.
      • getDescriptionBytes

        public com.google.protobuf.ByteString getDescriptionBytes()
         An optional name to give this socket option for debugging, etc.
         Uniqueness is not required and no special meaning is assumed.
         
        string description = 1;
        Specified by:
        getDescriptionBytes in interface SocketOptionOrBuilder
        Returns:
        The bytes for description.
      • getLevel

        public long getLevel()
         Corresponding to the level value passed to setsockopt, such as IPPROTO_TCP
         
        int64 level = 2;
        Specified by:
        getLevel in interface SocketOptionOrBuilder
        Returns:
        The level.
      • getName

        public long getName()
         The numeric name as passed to setsockopt
         
        int64 name = 3;
        Specified by:
        getName in interface SocketOptionOrBuilder
        Returns:
        The name.
      • hasIntValue

        public boolean hasIntValue()
         Because many sockopts take an int value.
         
        int64 int_value = 4;
        Specified by:
        hasIntValue in interface SocketOptionOrBuilder
        Returns:
        Whether the intValue field is set.
      • getIntValue

        public long getIntValue()
         Because many sockopts take an int value.
         
        int64 int_value = 4;
        Specified by:
        getIntValue in interface SocketOptionOrBuilder
        Returns:
        The intValue.
      • hasBufValue

        public boolean hasBufValue()
         Otherwise it's a byte buffer.
         
        bytes buf_value = 5;
        Specified by:
        hasBufValue in interface SocketOptionOrBuilder
        Returns:
        Whether the bufValue field is set.
      • getBufValue

        public com.google.protobuf.ByteString getBufValue()
         Otherwise it's a byte buffer.
         
        bytes buf_value = 5;
        Specified by:
        getBufValue in interface SocketOptionOrBuilder
        Returns:
        The bufValue.
      • getStateValue

        public int getStateValue()
         The state in which the option will be applied. When used in BindConfig
         STATE_PREBIND is currently the only valid value.
         
        .envoy.config.core.v3.SocketOption.SocketState state = 6 [(.validate.rules) = { ... }
        Specified by:
        getStateValue in interface SocketOptionOrBuilder
        Returns:
        The enum numeric value on the wire for state.
      • getState

        public SocketOption.SocketState getState()
         The state in which the option will be applied. When used in BindConfig
         STATE_PREBIND is currently the only valid value.
         
        .envoy.config.core.v3.SocketOption.SocketState state = 6 [(.validate.rules) = { ... }
        Specified by:
        getState in interface SocketOptionOrBuilder
        Returns:
        The state.
      • 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 SocketOption parseFrom​(java.nio.ByteBuffer data)
                                      throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public static SocketOption getDefaultInstance()
      • parser

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

        public com.google.protobuf.Parser<SocketOption> 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 SocketOption getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder