Class UpstreamIpPortMatcher.Builder

  • All Implemented Interfaces:
    com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, UpstreamIpPortMatcherOrBuilder, Cloneable
    Enclosing class:
    UpstreamIpPortMatcher

    public static final class UpstreamIpPortMatcher.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<UpstreamIpPortMatcher.Builder>
    implements UpstreamIpPortMatcherOrBuilder
     This is configuration for matching upstream ip and port.
     Note that although both fields are optional, at least one of IP or port must be supplied. If only
     one is supplied the other is a wildcard match.
     This matcher requires a filter in the chain to have saved the upstream address in the
     filter state before the matcher is executed by RBAC filter. The state should be saved with key
     ``envoy.stream.upstream_address`` (See
     :repo:`upstream_address.h<source/common/stream_info/upstream_address.h>`).
     Also, See :repo:`proxy_filter.cc<source/extensions/filters/http/dynamic_forward_proxy/proxy_filter.cc>`
     for an example of a filter which populates the FilterState.
     
    Protobuf type envoy.extensions.rbac.matchers.upstream_ip_port.v3.UpstreamIpPortMatcher
    • Method Detail

      • 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<UpstreamIpPortMatcher.Builder>
      • clear

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

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

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

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

        public UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
      • clearField

        public UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
      • clearOneof

        public UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
      • setRepeatedField

        public UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
      • addRepeatedField

        public UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
      • isInitialized

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

        public UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
        Throws:
        IOException
      • hasUpstreamIp

        public boolean hasUpstreamIp()
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
        Specified by:
        hasUpstreamIp in interface UpstreamIpPortMatcherOrBuilder
        Returns:
        Whether the upstreamIp field is set.
      • getUpstreamIp

        public CidrRange getUpstreamIp()
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
        Specified by:
        getUpstreamIp in interface UpstreamIpPortMatcherOrBuilder
        Returns:
        The upstreamIp.
      • setUpstreamIp

        public UpstreamIpPortMatcher.Builder setUpstreamIp​(CidrRange value)
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
      • setUpstreamIp

        public UpstreamIpPortMatcher.Builder setUpstreamIp​(CidrRange.Builder builderForValue)
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
      • mergeUpstreamIp

        public UpstreamIpPortMatcher.Builder mergeUpstreamIp​(CidrRange value)
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
      • clearUpstreamIp

        public UpstreamIpPortMatcher.Builder clearUpstreamIp()
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
      • getUpstreamIpBuilder

        public CidrRange.Builder getUpstreamIpBuilder()
         A CIDR block that will be used to match the upstream IP.
         Both Ipv4 and Ipv6 ranges can be matched.
         
        .envoy.config.core.v3.CidrRange upstream_ip = 1;
      • hasUpstreamPortRange

        public boolean hasUpstreamPortRange()
         A port range that will be used to match the upstream port.
         
        .envoy.type.v3.Int64Range upstream_port_range = 2;
        Specified by:
        hasUpstreamPortRange in interface UpstreamIpPortMatcherOrBuilder
        Returns:
        Whether the upstreamPortRange field is set.
      • setUpstreamPortRange

        public UpstreamIpPortMatcher.Builder setUpstreamPortRange​(Int64Range value)
         A port range that will be used to match the upstream port.
         
        .envoy.type.v3.Int64Range upstream_port_range = 2;
      • mergeUpstreamPortRange

        public UpstreamIpPortMatcher.Builder mergeUpstreamPortRange​(Int64Range value)
         A port range that will be used to match the upstream port.
         
        .envoy.type.v3.Int64Range upstream_port_range = 2;
      • clearUpstreamPortRange

        public UpstreamIpPortMatcher.Builder clearUpstreamPortRange()
         A port range that will be used to match the upstream port.
         
        .envoy.type.v3.Int64Range upstream_port_range = 2;
      • getUpstreamPortRangeBuilder

        public Int64Range.Builder getUpstreamPortRangeBuilder()
         A port range that will be used to match the upstream port.
         
        .envoy.type.v3.Int64Range upstream_port_range = 2;
      • setUnknownFields

        public final UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>
      • mergeUnknownFields

        public final UpstreamIpPortMatcher.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<UpstreamIpPortMatcher.Builder>