All Downloads are FREE. Search and download functionalities are using the official Maven repository.

yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass Maven / Gradle / Ivy

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: yandex/cloud/apploadbalancer/v1/virtual_host.proto

package yandex.cloud.api.apploadbalancer.v1;

public final class VirtualHostOuterClass {
  private VirtualHostOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface VirtualHostOrBuilder extends
      // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.VirtualHost)
      com.google.protobuf.MessageOrBuilder {

    /**
     * 
     * Name of the virtual host. The name is unique within the HTTP router.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ java.lang.String getName(); /** *
     * Name of the virtual host. The name is unique within the HTTP router.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ com.google.protobuf.ByteString getNameBytes(); /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @return A list containing the authority. */ java.util.List getAuthorityList(); /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @return The count of authority. */ int getAuthorityCount(); /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @param index The index of the element to return. * @return The authority at the given index. */ java.lang.String getAuthority(int index); /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @param index The index of the value to return. * @return The bytes of the authority at the given index. */ com.google.protobuf.ByteString getAuthorityBytes(int index); /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ java.util.List getRoutesList(); /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route getRoutes(int index); /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ int getRoutesCount(); /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ java.util.List getRoutesOrBuilderList(); /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder getRoutesOrBuilder( int index); /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ java.util.List getModifyRequestHeadersList(); /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyRequestHeaders(int index); /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ int getModifyRequestHeadersCount(); /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ java.util.List getModifyRequestHeadersOrBuilderList(); /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyRequestHeadersOrBuilder( int index); /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ java.util.List getModifyResponseHeadersList(); /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyResponseHeaders(int index); /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ int getModifyResponseHeadersCount(); /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ java.util.List getModifyResponseHeadersOrBuilderList(); /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyResponseHeadersOrBuilder( int index); /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; * @return Whether the routeOptions field is set. */ boolean hasRouteOptions(); /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; * @return The routeOptions. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getRouteOptions(); /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder getRouteOptionsOrBuilder(); } /** *
   * A virtual host resource.
   * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#virtual-host).
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.VirtualHost} */ public static final class VirtualHost extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.VirtualHost) VirtualHostOrBuilder { private static final long serialVersionUID = 0L; // Use VirtualHost.newBuilder() to construct. private VirtualHost(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private VirtualHost() { name_ = ""; authority_ = com.google.protobuf.LazyStringArrayList.EMPTY; routes_ = java.util.Collections.emptyList(); modifyRequestHeaders_ = java.util.Collections.emptyList(); modifyResponseHeaders_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new VirtualHost(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private VirtualHost( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); name_ = s; break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); if (!((mutable_bitField0_ & 0x00000001) != 0)) { authority_ = new com.google.protobuf.LazyStringArrayList(); mutable_bitField0_ |= 0x00000001; } authority_.add(s); break; } case 26: { if (!((mutable_bitField0_ & 0x00000002) != 0)) { routes_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000002; } routes_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.parser(), extensionRegistry)); break; } case 34: { if (!((mutable_bitField0_ & 0x00000004) != 0)) { modifyRequestHeaders_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000004; } modifyRequestHeaders_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.parser(), extensionRegistry)); break; } case 42: { if (!((mutable_bitField0_ & 0x00000008) != 0)) { modifyResponseHeaders_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000008; } modifyResponseHeaders_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.parser(), extensionRegistry)); break; } case 50: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder subBuilder = null; if (routeOptions_ != null) { subBuilder = routeOptions_.toBuilder(); } routeOptions_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(routeOptions_); routeOptions_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { authority_ = authority_.getUnmodifiableView(); } if (((mutable_bitField0_ & 0x00000002) != 0)) { routes_ = java.util.Collections.unmodifiableList(routes_); } if (((mutable_bitField0_ & 0x00000004) != 0)) { modifyRequestHeaders_ = java.util.Collections.unmodifiableList(modifyRequestHeaders_); } if (((mutable_bitField0_ & 0x00000008) != 0)) { modifyResponseHeaders_ = java.util.Collections.unmodifiableList(modifyResponseHeaders_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.Builder.class); } public static final int NAME_FIELD_NUMBER = 1; private volatile java.lang.Object name_; /** *
     * Name of the virtual host. The name is unique within the HTTP router.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** *
     * Name of the virtual host. The name is unique within the HTTP router.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int AUTHORITY_FIELD_NUMBER = 2; private com.google.protobuf.LazyStringList authority_; /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @return A list containing the authority. */ public com.google.protobuf.ProtocolStringList getAuthorityList() { return authority_; } /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @return The count of authority. */ public int getAuthorityCount() { return authority_.size(); } /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @param index The index of the element to return. * @return The authority at the given index. */ public java.lang.String getAuthority(int index) { return authority_.get(index); } /** *
     * List of domains that are attributed to the virtual host.
     * The host is selected to process the request received by the load balancer
     * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
     * specified in the host.
     * A wildcard asterisk character (`*`) matches 0 or more characters.
     * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
     * An HTTP router must not contain more than one virtual host to which all domains are attributed.
     * 
* * repeated string authority = 2; * @param index The index of the value to return. * @return The bytes of the authority at the given index. */ public com.google.protobuf.ByteString getAuthorityBytes(int index) { return authority_.getByteString(index); } public static final int ROUTES_FIELD_NUMBER = 3; private java.util.List routes_; /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ @java.lang.Override public java.util.List getRoutesList() { return routes_; } /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ @java.lang.Override public java.util.List getRoutesOrBuilderList() { return routes_; } /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ @java.lang.Override public int getRoutesCount() { return routes_.size(); } /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route getRoutes(int index) { return routes_.get(index); } /** *
     * Routes of the virtual host.
     * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
     * for the request and an action on the request.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * The order of routes matters: the first route whose predicate matches the request is selected.
     * The most specific routes should be at the top of the list, so that they are not overridden.
     * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
     * other routes are never matched.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder getRoutesOrBuilder( int index) { return routes_.get(index); } public static final int MODIFY_REQUEST_HEADERS_FIELD_NUMBER = 4; private java.util.List modifyRequestHeaders_; /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ @java.lang.Override public java.util.List getModifyRequestHeadersList() { return modifyRequestHeaders_; } /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ @java.lang.Override public java.util.List getModifyRequestHeadersOrBuilderList() { return modifyRequestHeaders_; } /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ @java.lang.Override public int getModifyRequestHeadersCount() { return modifyRequestHeaders_.size(); } /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyRequestHeaders(int index) { return modifyRequestHeaders_.get(index); } /** *
     * Deprecated, use route_options.modify_request_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyRequestHeadersOrBuilder( int index) { return modifyRequestHeaders_.get(index); } public static final int MODIFY_RESPONSE_HEADERS_FIELD_NUMBER = 5; private java.util.List modifyResponseHeaders_; /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ @java.lang.Override public java.util.List getModifyResponseHeadersList() { return modifyResponseHeaders_; } /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ @java.lang.Override public java.util.List getModifyResponseHeadersOrBuilderList() { return modifyResponseHeaders_; } /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ @java.lang.Override public int getModifyResponseHeadersCount() { return modifyResponseHeaders_.size(); } /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyResponseHeaders(int index) { return modifyResponseHeaders_.get(index); } /** *
     * Deprecated, use route_options.modify_response_headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyResponseHeadersOrBuilder( int index) { return modifyResponseHeaders_.get(index); } public static final int ROUTE_OPTIONS_FIELD_NUMBER = 6; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions routeOptions_; /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; * @return Whether the routeOptions field is set. */ @java.lang.Override public boolean hasRouteOptions() { return routeOptions_ != null; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; * @return The routeOptions. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getRouteOptions() { return routeOptions_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance() : routeOptions_; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder getRouteOptionsOrBuilder() { return getRouteOptions(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } for (int i = 0; i < authority_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, authority_.getRaw(i)); } for (int i = 0; i < routes_.size(); i++) { output.writeMessage(3, routes_.get(i)); } for (int i = 0; i < modifyRequestHeaders_.size(); i++) { output.writeMessage(4, modifyRequestHeaders_.get(i)); } for (int i = 0; i < modifyResponseHeaders_.size(); i++) { output.writeMessage(5, modifyResponseHeaders_.get(i)); } if (routeOptions_ != null) { output.writeMessage(6, getRouteOptions()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } { int dataSize = 0; for (int i = 0; i < authority_.size(); i++) { dataSize += computeStringSizeNoTag(authority_.getRaw(i)); } size += dataSize; size += 1 * getAuthorityList().size(); } for (int i = 0; i < routes_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, routes_.get(i)); } for (int i = 0; i < modifyRequestHeaders_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, modifyRequestHeaders_.get(i)); } for (int i = 0; i < modifyResponseHeaders_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(5, modifyResponseHeaders_.get(i)); } if (routeOptions_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, getRouteOptions()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost) obj; if (!getName() .equals(other.getName())) return false; if (!getAuthorityList() .equals(other.getAuthorityList())) return false; if (!getRoutesList() .equals(other.getRoutesList())) return false; if (!getModifyRequestHeadersList() .equals(other.getModifyRequestHeadersList())) return false; if (!getModifyResponseHeadersList() .equals(other.getModifyResponseHeadersList())) return false; if (hasRouteOptions() != other.hasRouteOptions()) return false; if (hasRouteOptions()) { if (!getRouteOptions() .equals(other.getRouteOptions())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); if (getAuthorityCount() > 0) { hash = (37 * hash) + AUTHORITY_FIELD_NUMBER; hash = (53 * hash) + getAuthorityList().hashCode(); } if (getRoutesCount() > 0) { hash = (37 * hash) + ROUTES_FIELD_NUMBER; hash = (53 * hash) + getRoutesList().hashCode(); } if (getModifyRequestHeadersCount() > 0) { hash = (37 * hash) + MODIFY_REQUEST_HEADERS_FIELD_NUMBER; hash = (53 * hash) + getModifyRequestHeadersList().hashCode(); } if (getModifyResponseHeadersCount() > 0) { hash = (37 * hash) + MODIFY_RESPONSE_HEADERS_FIELD_NUMBER; hash = (53 * hash) + getModifyResponseHeadersList().hashCode(); } if (hasRouteOptions()) { hash = (37 * hash) + ROUTE_OPTIONS_FIELD_NUMBER; hash = (53 * hash) + getRouteOptions().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A virtual host resource.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#virtual-host).
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.VirtualHost} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.VirtualHost) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHostOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getRoutesFieldBuilder(); getModifyRequestHeadersFieldBuilder(); getModifyResponseHeadersFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); name_ = ""; authority_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); if (routesBuilder_ == null) { routes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); } else { routesBuilder_.clear(); } if (modifyRequestHeadersBuilder_ == null) { modifyRequestHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000004); } else { modifyRequestHeadersBuilder_.clear(); } if (modifyResponseHeadersBuilder_ == null) { modifyResponseHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000008); } else { modifyResponseHeadersBuilder_.clear(); } if (routeOptionsBuilder_ == null) { routeOptions_ = null; } else { routeOptions_ = null; routeOptionsBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost(this); int from_bitField0_ = bitField0_; result.name_ = name_; if (((bitField0_ & 0x00000001) != 0)) { authority_ = authority_.getUnmodifiableView(); bitField0_ = (bitField0_ & ~0x00000001); } result.authority_ = authority_; if (routesBuilder_ == null) { if (((bitField0_ & 0x00000002) != 0)) { routes_ = java.util.Collections.unmodifiableList(routes_); bitField0_ = (bitField0_ & ~0x00000002); } result.routes_ = routes_; } else { result.routes_ = routesBuilder_.build(); } if (modifyRequestHeadersBuilder_ == null) { if (((bitField0_ & 0x00000004) != 0)) { modifyRequestHeaders_ = java.util.Collections.unmodifiableList(modifyRequestHeaders_); bitField0_ = (bitField0_ & ~0x00000004); } result.modifyRequestHeaders_ = modifyRequestHeaders_; } else { result.modifyRequestHeaders_ = modifyRequestHeadersBuilder_.build(); } if (modifyResponseHeadersBuilder_ == null) { if (((bitField0_ & 0x00000008) != 0)) { modifyResponseHeaders_ = java.util.Collections.unmodifiableList(modifyResponseHeaders_); bitField0_ = (bitField0_ & ~0x00000008); } result.modifyResponseHeaders_ = modifyResponseHeaders_; } else { result.modifyResponseHeaders_ = modifyResponseHeadersBuilder_.build(); } if (routeOptionsBuilder_ == null) { result.routeOptions_ = routeOptions_; } else { result.routeOptions_ = routeOptionsBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; onChanged(); } if (!other.authority_.isEmpty()) { if (authority_.isEmpty()) { authority_ = other.authority_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureAuthorityIsMutable(); authority_.addAll(other.authority_); } onChanged(); } if (routesBuilder_ == null) { if (!other.routes_.isEmpty()) { if (routes_.isEmpty()) { routes_ = other.routes_; bitField0_ = (bitField0_ & ~0x00000002); } else { ensureRoutesIsMutable(); routes_.addAll(other.routes_); } onChanged(); } } else { if (!other.routes_.isEmpty()) { if (routesBuilder_.isEmpty()) { routesBuilder_.dispose(); routesBuilder_ = null; routes_ = other.routes_; bitField0_ = (bitField0_ & ~0x00000002); routesBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getRoutesFieldBuilder() : null; } else { routesBuilder_.addAllMessages(other.routes_); } } } if (modifyRequestHeadersBuilder_ == null) { if (!other.modifyRequestHeaders_.isEmpty()) { if (modifyRequestHeaders_.isEmpty()) { modifyRequestHeaders_ = other.modifyRequestHeaders_; bitField0_ = (bitField0_ & ~0x00000004); } else { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.addAll(other.modifyRequestHeaders_); } onChanged(); } } else { if (!other.modifyRequestHeaders_.isEmpty()) { if (modifyRequestHeadersBuilder_.isEmpty()) { modifyRequestHeadersBuilder_.dispose(); modifyRequestHeadersBuilder_ = null; modifyRequestHeaders_ = other.modifyRequestHeaders_; bitField0_ = (bitField0_ & ~0x00000004); modifyRequestHeadersBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getModifyRequestHeadersFieldBuilder() : null; } else { modifyRequestHeadersBuilder_.addAllMessages(other.modifyRequestHeaders_); } } } if (modifyResponseHeadersBuilder_ == null) { if (!other.modifyResponseHeaders_.isEmpty()) { if (modifyResponseHeaders_.isEmpty()) { modifyResponseHeaders_ = other.modifyResponseHeaders_; bitField0_ = (bitField0_ & ~0x00000008); } else { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.addAll(other.modifyResponseHeaders_); } onChanged(); } } else { if (!other.modifyResponseHeaders_.isEmpty()) { if (modifyResponseHeadersBuilder_.isEmpty()) { modifyResponseHeadersBuilder_.dispose(); modifyResponseHeadersBuilder_ = null; modifyResponseHeaders_ = other.modifyResponseHeaders_; bitField0_ = (bitField0_ & ~0x00000008); modifyResponseHeadersBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getModifyResponseHeadersFieldBuilder() : null; } else { modifyResponseHeadersBuilder_.addAllMessages(other.modifyResponseHeaders_); } } } if (other.hasRouteOptions()) { mergeRouteOptions(other.getRouteOptions()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.lang.Object name_ = ""; /** *
       * Name of the virtual host. The name is unique within the HTTP router.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * Name of the virtual host. The name is unique within the HTTP router.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Name of the virtual host. The name is unique within the HTTP router.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @param value The name to set. * @return This builder for chaining. */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; onChanged(); return this; } /** *
       * Name of the virtual host. The name is unique within the HTTP router.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); onChanged(); return this; } /** *
       * Name of the virtual host. The name is unique within the HTTP router.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; onChanged(); return this; } private com.google.protobuf.LazyStringList authority_ = com.google.protobuf.LazyStringArrayList.EMPTY; private void ensureAuthorityIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { authority_ = new com.google.protobuf.LazyStringArrayList(authority_); bitField0_ |= 0x00000001; } } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @return A list containing the authority. */ public com.google.protobuf.ProtocolStringList getAuthorityList() { return authority_.getUnmodifiableView(); } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @return The count of authority. */ public int getAuthorityCount() { return authority_.size(); } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @param index The index of the element to return. * @return The authority at the given index. */ public java.lang.String getAuthority(int index) { return authority_.get(index); } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @param index The index of the value to return. * @return The bytes of the authority at the given index. */ public com.google.protobuf.ByteString getAuthorityBytes(int index) { return authority_.getByteString(index); } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @param index The index to set the value at. * @param value The authority to set. * @return This builder for chaining. */ public Builder setAuthority( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureAuthorityIsMutable(); authority_.set(index, value); onChanged(); return this; } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @param value The authority to add. * @return This builder for chaining. */ public Builder addAuthority( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureAuthorityIsMutable(); authority_.add(value); onChanged(); return this; } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @param values The authority to add. * @return This builder for chaining. */ public Builder addAllAuthority( java.lang.Iterable values) { ensureAuthorityIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, authority_); onChanged(); return this; } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @return This builder for chaining. */ public Builder clearAuthority() { authority_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** *
       * List of domains that are attributed to the virtual host.
       * The host is selected to process the request received by the load balancer
       * if the domain specified in the HTTP/1.1 `Host` header or the HTTP/2 `:authority` pseudo-header matches a domain
       * specified in the host.
       * A wildcard asterisk character (`*`) matches 0 or more characters.
       * If not specified, all domains are attributed to the host, which is the same as specifying a `*` value.
       * An HTTP router must not contain more than one virtual host to which all domains are attributed.
       * 
* * repeated string authority = 2; * @param value The bytes of the authority to add. * @return This builder for chaining. */ public Builder addAuthorityBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureAuthorityIsMutable(); authority_.add(value); onChanged(); return this; } private java.util.List routes_ = java.util.Collections.emptyList(); private void ensureRoutesIsMutable() { if (!((bitField0_ & 0x00000002) != 0)) { routes_ = new java.util.ArrayList(routes_); bitField0_ |= 0x00000002; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder> routesBuilder_; /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public java.util.List getRoutesList() { if (routesBuilder_ == null) { return java.util.Collections.unmodifiableList(routes_); } else { return routesBuilder_.getMessageList(); } } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public int getRoutesCount() { if (routesBuilder_ == null) { return routes_.size(); } else { return routesBuilder_.getCount(); } } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route getRoutes(int index) { if (routesBuilder_ == null) { return routes_.get(index); } else { return routesBuilder_.getMessage(index); } } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder setRoutes( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route value) { if (routesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureRoutesIsMutable(); routes_.set(index, value); onChanged(); } else { routesBuilder_.setMessage(index, value); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder setRoutes( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder builderForValue) { if (routesBuilder_ == null) { ensureRoutesIsMutable(); routes_.set(index, builderForValue.build()); onChanged(); } else { routesBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder addRoutes(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route value) { if (routesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureRoutesIsMutable(); routes_.add(value); onChanged(); } else { routesBuilder_.addMessage(value); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder addRoutes( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route value) { if (routesBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureRoutesIsMutable(); routes_.add(index, value); onChanged(); } else { routesBuilder_.addMessage(index, value); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder addRoutes( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder builderForValue) { if (routesBuilder_ == null) { ensureRoutesIsMutable(); routes_.add(builderForValue.build()); onChanged(); } else { routesBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder addRoutes( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder builderForValue) { if (routesBuilder_ == null) { ensureRoutesIsMutable(); routes_.add(index, builderForValue.build()); onChanged(); } else { routesBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder addAllRoutes( java.lang.Iterable values) { if (routesBuilder_ == null) { ensureRoutesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, routes_); onChanged(); } else { routesBuilder_.addAllMessages(values); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder clearRoutes() { if (routesBuilder_ == null) { routes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); } else { routesBuilder_.clear(); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public Builder removeRoutes(int index) { if (routesBuilder_ == null) { ensureRoutesIsMutable(); routes_.remove(index); onChanged(); } else { routesBuilder_.remove(index); } return this; } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder getRoutesBuilder( int index) { return getRoutesFieldBuilder().getBuilder(index); } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder getRoutesOrBuilder( int index) { if (routesBuilder_ == null) { return routes_.get(index); } else { return routesBuilder_.getMessageOrBuilder(index); } } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public java.util.List getRoutesOrBuilderList() { if (routesBuilder_ != null) { return routesBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(routes_); } } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder addRoutesBuilder() { return getRoutesFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.getDefaultInstance()); } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder addRoutesBuilder( int index) { return getRoutesFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.getDefaultInstance()); } /** *
       * Routes of the virtual host.
       * A route contains a set of conditions (predicates) that are used by the load balancer to select the route
       * for the request and an action on the request.
       * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
       * The order of routes matters: the first route whose predicate matches the request is selected.
       * The most specific routes should be at the top of the list, so that they are not overridden.
       * For example, if the first HTTP route is configured, via [HttpRoute.match], to match paths prefixed with just `/`,
       * other routes are never matched.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Route routes = 3; */ public java.util.List getRoutesBuilderList() { return getRoutesFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder> getRoutesFieldBuilder() { if (routesBuilder_ == null) { routesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder>( routes_, ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); routes_ = null; } return routesBuilder_; } private java.util.List modifyRequestHeaders_ = java.util.Collections.emptyList(); private void ensureModifyRequestHeadersIsMutable() { if (!((bitField0_ & 0x00000004) != 0)) { modifyRequestHeaders_ = new java.util.ArrayList(modifyRequestHeaders_); bitField0_ |= 0x00000004; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> modifyRequestHeadersBuilder_; /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public java.util.List getModifyRequestHeadersList() { if (modifyRequestHeadersBuilder_ == null) { return java.util.Collections.unmodifiableList(modifyRequestHeaders_); } else { return modifyRequestHeadersBuilder_.getMessageList(); } } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public int getModifyRequestHeadersCount() { if (modifyRequestHeadersBuilder_ == null) { return modifyRequestHeaders_.size(); } else { return modifyRequestHeadersBuilder_.getCount(); } } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyRequestHeaders(int index) { if (modifyRequestHeadersBuilder_ == null) { return modifyRequestHeaders_.get(index); } else { return modifyRequestHeadersBuilder_.getMessage(index); } } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder setModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyRequestHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.set(index, value); onChanged(); } else { modifyRequestHeadersBuilder_.setMessage(index, value); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder setModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.set(index, builderForValue.build()); onChanged(); } else { modifyRequestHeadersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder addModifyRequestHeaders(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyRequestHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(value); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(value); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder addModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyRequestHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(index, value); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(index, value); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder addModifyRequestHeaders( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(builderForValue.build()); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder addModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(index, builderForValue.build()); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder addAllModifyRequestHeaders( java.lang.Iterable values) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, modifyRequestHeaders_); onChanged(); } else { modifyRequestHeadersBuilder_.addAllMessages(values); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder clearModifyRequestHeaders() { if (modifyRequestHeadersBuilder_ == null) { modifyRequestHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000004); onChanged(); } else { modifyRequestHeadersBuilder_.clear(); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public Builder removeModifyRequestHeaders(int index) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.remove(index); onChanged(); } else { modifyRequestHeadersBuilder_.remove(index); } return this; } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder getModifyRequestHeadersBuilder( int index) { return getModifyRequestHeadersFieldBuilder().getBuilder(index); } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyRequestHeadersOrBuilder( int index) { if (modifyRequestHeadersBuilder_ == null) { return modifyRequestHeaders_.get(index); } else { return modifyRequestHeadersBuilder_.getMessageOrBuilder(index); } } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public java.util.List getModifyRequestHeadersOrBuilderList() { if (modifyRequestHeadersBuilder_ != null) { return modifyRequestHeadersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(modifyRequestHeaders_); } } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyRequestHeadersBuilder() { return getModifyRequestHeadersFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyRequestHeadersBuilder( int index) { return getModifyRequestHeadersFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Deprecated, use route_options.modify_request_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 4; */ public java.util.List getModifyRequestHeadersBuilderList() { return getModifyRequestHeadersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> getModifyRequestHeadersFieldBuilder() { if (modifyRequestHeadersBuilder_ == null) { modifyRequestHeadersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder>( modifyRequestHeaders_, ((bitField0_ & 0x00000004) != 0), getParentForChildren(), isClean()); modifyRequestHeaders_ = null; } return modifyRequestHeadersBuilder_; } private java.util.List modifyResponseHeaders_ = java.util.Collections.emptyList(); private void ensureModifyResponseHeadersIsMutable() { if (!((bitField0_ & 0x00000008) != 0)) { modifyResponseHeaders_ = new java.util.ArrayList(modifyResponseHeaders_); bitField0_ |= 0x00000008; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> modifyResponseHeadersBuilder_; /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public java.util.List getModifyResponseHeadersList() { if (modifyResponseHeadersBuilder_ == null) { return java.util.Collections.unmodifiableList(modifyResponseHeaders_); } else { return modifyResponseHeadersBuilder_.getMessageList(); } } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public int getModifyResponseHeadersCount() { if (modifyResponseHeadersBuilder_ == null) { return modifyResponseHeaders_.size(); } else { return modifyResponseHeadersBuilder_.getCount(); } } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyResponseHeaders(int index) { if (modifyResponseHeadersBuilder_ == null) { return modifyResponseHeaders_.get(index); } else { return modifyResponseHeadersBuilder_.getMessage(index); } } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder setModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyResponseHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.set(index, value); onChanged(); } else { modifyResponseHeadersBuilder_.setMessage(index, value); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder setModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.set(index, builderForValue.build()); onChanged(); } else { modifyResponseHeadersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder addModifyResponseHeaders(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyResponseHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(value); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(value); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder addModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyResponseHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(index, value); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(index, value); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder addModifyResponseHeaders( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(builderForValue.build()); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder addModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(index, builderForValue.build()); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder addAllModifyResponseHeaders( java.lang.Iterable values) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, modifyResponseHeaders_); onChanged(); } else { modifyResponseHeadersBuilder_.addAllMessages(values); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder clearModifyResponseHeaders() { if (modifyResponseHeadersBuilder_ == null) { modifyResponseHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000008); onChanged(); } else { modifyResponseHeadersBuilder_.clear(); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public Builder removeModifyResponseHeaders(int index) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.remove(index); onChanged(); } else { modifyResponseHeadersBuilder_.remove(index); } return this; } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder getModifyResponseHeadersBuilder( int index) { return getModifyResponseHeadersFieldBuilder().getBuilder(index); } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyResponseHeadersOrBuilder( int index) { if (modifyResponseHeadersBuilder_ == null) { return modifyResponseHeaders_.get(index); } else { return modifyResponseHeadersBuilder_.getMessageOrBuilder(index); } } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public java.util.List getModifyResponseHeadersOrBuilderList() { if (modifyResponseHeadersBuilder_ != null) { return modifyResponseHeadersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(modifyResponseHeaders_); } } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyResponseHeadersBuilder() { return getModifyResponseHeadersFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyResponseHeadersBuilder( int index) { return getModifyResponseHeadersFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Deprecated, use route_options.modify_response_headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 5; */ public java.util.List getModifyResponseHeadersBuilderList() { return getModifyResponseHeadersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> getModifyResponseHeadersFieldBuilder() { if (modifyResponseHeadersBuilder_ == null) { modifyResponseHeadersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder>( modifyResponseHeaders_, ((bitField0_ & 0x00000008) != 0), getParentForChildren(), isClean()); modifyResponseHeaders_ = null; } return modifyResponseHeadersBuilder_; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions routeOptions_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder> routeOptionsBuilder_; /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; * @return Whether the routeOptions field is set. */ public boolean hasRouteOptions() { return routeOptionsBuilder_ != null || routeOptions_ != null; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; * @return The routeOptions. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getRouteOptions() { if (routeOptionsBuilder_ == null) { return routeOptions_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance() : routeOptions_; } else { return routeOptionsBuilder_.getMessage(); } } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ public Builder setRouteOptions(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions value) { if (routeOptionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } routeOptions_ = value; onChanged(); } else { routeOptionsBuilder_.setMessage(value); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ public Builder setRouteOptions( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder builderForValue) { if (routeOptionsBuilder_ == null) { routeOptions_ = builderForValue.build(); onChanged(); } else { routeOptionsBuilder_.setMessage(builderForValue.build()); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ public Builder mergeRouteOptions(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions value) { if (routeOptionsBuilder_ == null) { if (routeOptions_ != null) { routeOptions_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.newBuilder(routeOptions_).mergeFrom(value).buildPartial(); } else { routeOptions_ = value; } onChanged(); } else { routeOptionsBuilder_.mergeFrom(value); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ public Builder clearRouteOptions() { if (routeOptionsBuilder_ == null) { routeOptions_ = null; onChanged(); } else { routeOptions_ = null; routeOptionsBuilder_ = null; } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder getRouteOptionsBuilder() { onChanged(); return getRouteOptionsFieldBuilder().getBuilder(); } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder getRouteOptionsOrBuilder() { if (routeOptionsBuilder_ != null) { return routeOptionsBuilder_.getMessageOrBuilder(); } else { return routeOptions_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance() : routeOptions_; } } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 6; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder> getRouteOptionsFieldBuilder() { if (routeOptionsBuilder_ == null) { routeOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder>( getRouteOptions(), getParentForChildren(), isClean()); routeOptions_ = null; } return routeOptionsBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.VirtualHost) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.VirtualHost) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public VirtualHost parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new VirtualHost(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.VirtualHost getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface RouteOptionsOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.RouteOptions) com.google.protobuf.MessageOrBuilder { /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ java.util.List getModifyRequestHeadersList(); /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyRequestHeaders(int index); /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ int getModifyRequestHeadersCount(); /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ java.util.List getModifyRequestHeadersOrBuilderList(); /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyRequestHeadersOrBuilder( int index); /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ java.util.List getModifyResponseHeadersList(); /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyResponseHeaders(int index); /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ int getModifyResponseHeadersCount(); /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ java.util.List getModifyResponseHeadersOrBuilderList(); /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyResponseHeadersOrBuilder( int index); /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; * @return Whether the rbac field is set. */ boolean hasRbac(); /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; * @return The rbac. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC getRbac(); /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder getRbacOrBuilder(); } /** * Protobuf type {@code yandex.cloud.apploadbalancer.v1.RouteOptions} */ public static final class RouteOptions extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.RouteOptions) RouteOptionsOrBuilder { private static final long serialVersionUID = 0L; // Use RouteOptions.newBuilder() to construct. private RouteOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private RouteOptions() { modifyRequestHeaders_ = java.util.Collections.emptyList(); modifyResponseHeaders_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new RouteOptions(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private RouteOptions( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { modifyRequestHeaders_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000001; } modifyRequestHeaders_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.parser(), extensionRegistry)); break; } case 18: { if (!((mutable_bitField0_ & 0x00000002) != 0)) { modifyResponseHeaders_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000002; } modifyResponseHeaders_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.parser(), extensionRegistry)); break; } case 26: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder subBuilder = null; if (rbac_ != null) { subBuilder = rbac_.toBuilder(); } rbac_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(rbac_); rbac_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { modifyRequestHeaders_ = java.util.Collections.unmodifiableList(modifyRequestHeaders_); } if (((mutable_bitField0_ & 0x00000002) != 0)) { modifyResponseHeaders_ = java.util.Collections.unmodifiableList(modifyResponseHeaders_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder.class); } public static final int MODIFY_REQUEST_HEADERS_FIELD_NUMBER = 1; private java.util.List modifyRequestHeaders_; /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ @java.lang.Override public java.util.List getModifyRequestHeadersList() { return modifyRequestHeaders_; } /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ @java.lang.Override public java.util.List getModifyRequestHeadersOrBuilderList() { return modifyRequestHeaders_; } /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ @java.lang.Override public int getModifyRequestHeadersCount() { return modifyRequestHeaders_.size(); } /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyRequestHeaders(int index) { return modifyRequestHeaders_.get(index); } /** *
     * Apply the following modifications to the request headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyRequestHeadersOrBuilder( int index) { return modifyRequestHeaders_.get(index); } public static final int MODIFY_RESPONSE_HEADERS_FIELD_NUMBER = 2; private java.util.List modifyResponseHeaders_; /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ @java.lang.Override public java.util.List getModifyResponseHeadersList() { return modifyResponseHeaders_; } /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ @java.lang.Override public java.util.List getModifyResponseHeadersOrBuilderList() { return modifyResponseHeaders_; } /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ @java.lang.Override public int getModifyResponseHeadersCount() { return modifyResponseHeaders_.size(); } /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyResponseHeaders(int index) { return modifyResponseHeaders_.get(index); } /** *
     * Apply the following modifications to the response headers.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyResponseHeadersOrBuilder( int index) { return modifyResponseHeaders_.get(index); } public static final int RBAC_FIELD_NUMBER = 3; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC rbac_; /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; * @return Whether the rbac field is set. */ @java.lang.Override public boolean hasRbac() { return rbac_ != null; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; * @return The rbac. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC getRbac() { return rbac_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.getDefaultInstance() : rbac_; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder getRbacOrBuilder() { return getRbac(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < modifyRequestHeaders_.size(); i++) { output.writeMessage(1, modifyRequestHeaders_.get(i)); } for (int i = 0; i < modifyResponseHeaders_.size(); i++) { output.writeMessage(2, modifyResponseHeaders_.get(i)); } if (rbac_ != null) { output.writeMessage(3, getRbac()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; for (int i = 0; i < modifyRequestHeaders_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, modifyRequestHeaders_.get(i)); } for (int i = 0; i < modifyResponseHeaders_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, modifyResponseHeaders_.get(i)); } if (rbac_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, getRbac()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions) obj; if (!getModifyRequestHeadersList() .equals(other.getModifyRequestHeadersList())) return false; if (!getModifyResponseHeadersList() .equals(other.getModifyResponseHeadersList())) return false; if (hasRbac() != other.hasRbac()) return false; if (hasRbac()) { if (!getRbac() .equals(other.getRbac())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (getModifyRequestHeadersCount() > 0) { hash = (37 * hash) + MODIFY_REQUEST_HEADERS_FIELD_NUMBER; hash = (53 * hash) + getModifyRequestHeadersList().hashCode(); } if (getModifyResponseHeadersCount() > 0) { hash = (37 * hash) + MODIFY_RESPONSE_HEADERS_FIELD_NUMBER; hash = (53 * hash) + getModifyResponseHeadersList().hashCode(); } if (hasRbac()) { hash = (37 * hash) + RBAC_FIELD_NUMBER; hash = (53 * hash) + getRbac().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code yandex.cloud.apploadbalancer.v1.RouteOptions} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.RouteOptions) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getModifyRequestHeadersFieldBuilder(); getModifyResponseHeadersFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); if (modifyRequestHeadersBuilder_ == null) { modifyRequestHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { modifyRequestHeadersBuilder_.clear(); } if (modifyResponseHeadersBuilder_ == null) { modifyResponseHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); } else { modifyResponseHeadersBuilder_.clear(); } if (rbacBuilder_ == null) { rbac_ = null; } else { rbac_ = null; rbacBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions(this); int from_bitField0_ = bitField0_; if (modifyRequestHeadersBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { modifyRequestHeaders_ = java.util.Collections.unmodifiableList(modifyRequestHeaders_); bitField0_ = (bitField0_ & ~0x00000001); } result.modifyRequestHeaders_ = modifyRequestHeaders_; } else { result.modifyRequestHeaders_ = modifyRequestHeadersBuilder_.build(); } if (modifyResponseHeadersBuilder_ == null) { if (((bitField0_ & 0x00000002) != 0)) { modifyResponseHeaders_ = java.util.Collections.unmodifiableList(modifyResponseHeaders_); bitField0_ = (bitField0_ & ~0x00000002); } result.modifyResponseHeaders_ = modifyResponseHeaders_; } else { result.modifyResponseHeaders_ = modifyResponseHeadersBuilder_.build(); } if (rbacBuilder_ == null) { result.rbac_ = rbac_; } else { result.rbac_ = rbacBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance()) return this; if (modifyRequestHeadersBuilder_ == null) { if (!other.modifyRequestHeaders_.isEmpty()) { if (modifyRequestHeaders_.isEmpty()) { modifyRequestHeaders_ = other.modifyRequestHeaders_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.addAll(other.modifyRequestHeaders_); } onChanged(); } } else { if (!other.modifyRequestHeaders_.isEmpty()) { if (modifyRequestHeadersBuilder_.isEmpty()) { modifyRequestHeadersBuilder_.dispose(); modifyRequestHeadersBuilder_ = null; modifyRequestHeaders_ = other.modifyRequestHeaders_; bitField0_ = (bitField0_ & ~0x00000001); modifyRequestHeadersBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getModifyRequestHeadersFieldBuilder() : null; } else { modifyRequestHeadersBuilder_.addAllMessages(other.modifyRequestHeaders_); } } } if (modifyResponseHeadersBuilder_ == null) { if (!other.modifyResponseHeaders_.isEmpty()) { if (modifyResponseHeaders_.isEmpty()) { modifyResponseHeaders_ = other.modifyResponseHeaders_; bitField0_ = (bitField0_ & ~0x00000002); } else { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.addAll(other.modifyResponseHeaders_); } onChanged(); } } else { if (!other.modifyResponseHeaders_.isEmpty()) { if (modifyResponseHeadersBuilder_.isEmpty()) { modifyResponseHeadersBuilder_.dispose(); modifyResponseHeadersBuilder_ = null; modifyResponseHeaders_ = other.modifyResponseHeaders_; bitField0_ = (bitField0_ & ~0x00000002); modifyResponseHeadersBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getModifyResponseHeadersFieldBuilder() : null; } else { modifyResponseHeadersBuilder_.addAllMessages(other.modifyResponseHeaders_); } } } if (other.hasRbac()) { mergeRbac(other.getRbac()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.util.List modifyRequestHeaders_ = java.util.Collections.emptyList(); private void ensureModifyRequestHeadersIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { modifyRequestHeaders_ = new java.util.ArrayList(modifyRequestHeaders_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> modifyRequestHeadersBuilder_; /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public java.util.List getModifyRequestHeadersList() { if (modifyRequestHeadersBuilder_ == null) { return java.util.Collections.unmodifiableList(modifyRequestHeaders_); } else { return modifyRequestHeadersBuilder_.getMessageList(); } } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public int getModifyRequestHeadersCount() { if (modifyRequestHeadersBuilder_ == null) { return modifyRequestHeaders_.size(); } else { return modifyRequestHeadersBuilder_.getCount(); } } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyRequestHeaders(int index) { if (modifyRequestHeadersBuilder_ == null) { return modifyRequestHeaders_.get(index); } else { return modifyRequestHeadersBuilder_.getMessage(index); } } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder setModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyRequestHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.set(index, value); onChanged(); } else { modifyRequestHeadersBuilder_.setMessage(index, value); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder setModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.set(index, builderForValue.build()); onChanged(); } else { modifyRequestHeadersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder addModifyRequestHeaders(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyRequestHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(value); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(value); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder addModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyRequestHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(index, value); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(index, value); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder addModifyRequestHeaders( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(builderForValue.build()); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder addModifyRequestHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.add(index, builderForValue.build()); onChanged(); } else { modifyRequestHeadersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder addAllModifyRequestHeaders( java.lang.Iterable values) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, modifyRequestHeaders_); onChanged(); } else { modifyRequestHeadersBuilder_.addAllMessages(values); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder clearModifyRequestHeaders() { if (modifyRequestHeadersBuilder_ == null) { modifyRequestHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { modifyRequestHeadersBuilder_.clear(); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public Builder removeModifyRequestHeaders(int index) { if (modifyRequestHeadersBuilder_ == null) { ensureModifyRequestHeadersIsMutable(); modifyRequestHeaders_.remove(index); onChanged(); } else { modifyRequestHeadersBuilder_.remove(index); } return this; } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder getModifyRequestHeadersBuilder( int index) { return getModifyRequestHeadersFieldBuilder().getBuilder(index); } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyRequestHeadersOrBuilder( int index) { if (modifyRequestHeadersBuilder_ == null) { return modifyRequestHeaders_.get(index); } else { return modifyRequestHeadersBuilder_.getMessageOrBuilder(index); } } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public java.util.List getModifyRequestHeadersOrBuilderList() { if (modifyRequestHeadersBuilder_ != null) { return modifyRequestHeadersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(modifyRequestHeaders_); } } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyRequestHeadersBuilder() { return getModifyRequestHeadersFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyRequestHeadersBuilder( int index) { return getModifyRequestHeadersFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Apply the following modifications to the request headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_request_headers = 1; */ public java.util.List getModifyRequestHeadersBuilderList() { return getModifyRequestHeadersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> getModifyRequestHeadersFieldBuilder() { if (modifyRequestHeadersBuilder_ == null) { modifyRequestHeadersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder>( modifyRequestHeaders_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); modifyRequestHeaders_ = null; } return modifyRequestHeadersBuilder_; } private java.util.List modifyResponseHeaders_ = java.util.Collections.emptyList(); private void ensureModifyResponseHeadersIsMutable() { if (!((bitField0_ & 0x00000002) != 0)) { modifyResponseHeaders_ = new java.util.ArrayList(modifyResponseHeaders_); bitField0_ |= 0x00000002; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> modifyResponseHeadersBuilder_; /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public java.util.List getModifyResponseHeadersList() { if (modifyResponseHeadersBuilder_ == null) { return java.util.Collections.unmodifiableList(modifyResponseHeaders_); } else { return modifyResponseHeadersBuilder_.getMessageList(); } } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public int getModifyResponseHeadersCount() { if (modifyResponseHeadersBuilder_ == null) { return modifyResponseHeaders_.size(); } else { return modifyResponseHeadersBuilder_.getCount(); } } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getModifyResponseHeaders(int index) { if (modifyResponseHeadersBuilder_ == null) { return modifyResponseHeaders_.get(index); } else { return modifyResponseHeadersBuilder_.getMessage(index); } } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder setModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyResponseHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.set(index, value); onChanged(); } else { modifyResponseHeadersBuilder_.setMessage(index, value); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder setModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.set(index, builderForValue.build()); onChanged(); } else { modifyResponseHeadersBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder addModifyResponseHeaders(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyResponseHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(value); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(value); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder addModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification value) { if (modifyResponseHeadersBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(index, value); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(index, value); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder addModifyResponseHeaders( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(builderForValue.build()); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder addModifyResponseHeaders( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder builderForValue) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.add(index, builderForValue.build()); onChanged(); } else { modifyResponseHeadersBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder addAllModifyResponseHeaders( java.lang.Iterable values) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, modifyResponseHeaders_); onChanged(); } else { modifyResponseHeadersBuilder_.addAllMessages(values); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder clearModifyResponseHeaders() { if (modifyResponseHeadersBuilder_ == null) { modifyResponseHeaders_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); } else { modifyResponseHeadersBuilder_.clear(); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public Builder removeModifyResponseHeaders(int index) { if (modifyResponseHeadersBuilder_ == null) { ensureModifyResponseHeadersIsMutable(); modifyResponseHeaders_.remove(index); onChanged(); } else { modifyResponseHeadersBuilder_.remove(index); } return this; } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder getModifyResponseHeadersBuilder( int index) { return getModifyResponseHeadersFieldBuilder().getBuilder(index); } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder getModifyResponseHeadersOrBuilder( int index) { if (modifyResponseHeadersBuilder_ == null) { return modifyResponseHeaders_.get(index); } else { return modifyResponseHeadersBuilder_.getMessageOrBuilder(index); } } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public java.util.List getModifyResponseHeadersOrBuilderList() { if (modifyResponseHeadersBuilder_ != null) { return modifyResponseHeadersBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(modifyResponseHeaders_); } } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyResponseHeadersBuilder() { return getModifyResponseHeadersFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder addModifyResponseHeadersBuilder( int index) { return getModifyResponseHeadersFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()); } /** *
       * Apply the following modifications to the response headers.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.HeaderModification modify_response_headers = 2; */ public java.util.List getModifyResponseHeadersBuilderList() { return getModifyResponseHeadersFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder> getModifyResponseHeadersFieldBuilder() { if (modifyResponseHeadersBuilder_ == null) { modifyResponseHeadersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder>( modifyResponseHeaders_, ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); modifyResponseHeaders_ = null; } return modifyResponseHeadersBuilder_; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC rbac_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder> rbacBuilder_; /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; * @return Whether the rbac field is set. */ public boolean hasRbac() { return rbacBuilder_ != null || rbac_ != null; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; * @return The rbac. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC getRbac() { if (rbacBuilder_ == null) { return rbac_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.getDefaultInstance() : rbac_; } else { return rbacBuilder_.getMessage(); } } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ public Builder setRbac(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC value) { if (rbacBuilder_ == null) { if (value == null) { throw new NullPointerException(); } rbac_ = value; onChanged(); } else { rbacBuilder_.setMessage(value); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ public Builder setRbac( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder builderForValue) { if (rbacBuilder_ == null) { rbac_ = builderForValue.build(); onChanged(); } else { rbacBuilder_.setMessage(builderForValue.build()); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ public Builder mergeRbac(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC value) { if (rbacBuilder_ == null) { if (rbac_ != null) { rbac_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.newBuilder(rbac_).mergeFrom(value).buildPartial(); } else { rbac_ = value; } onChanged(); } else { rbacBuilder_.mergeFrom(value); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ public Builder clearRbac() { if (rbacBuilder_ == null) { rbac_ = null; onChanged(); } else { rbac_ = null; rbacBuilder_ = null; } return this; } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder getRbacBuilder() { onChanged(); return getRbacFieldBuilder().getBuilder(); } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder getRbacOrBuilder() { if (rbacBuilder_ != null) { return rbacBuilder_.getMessageOrBuilder(); } else { return rbac_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.getDefaultInstance() : rbac_; } } /** * .yandex.cloud.apploadbalancer.v1.RBAC rbac = 3; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder> getRbacFieldBuilder() { if (rbacBuilder_ == null) { rbacBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder>( getRbac(), getParentForChildren(), isClean()); rbac_ = null; } return rbacBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.RouteOptions) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.RouteOptions) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public RouteOptions parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new RouteOptions(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface RBACOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.RBAC) com.google.protobuf.MessageOrBuilder { /** *
     * The action to take if a principal matches. Every action either allows or denies a request.
     * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return The enum numeric value on the wire for action. */ int getActionValue(); /** *
     * The action to take if a principal matches. Every action either allows or denies a request.
     * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return The action. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action getAction(); /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ java.util.List getPrincipalsList(); /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals getPrincipals(int index); /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ int getPrincipalsCount(); /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ java.util.List getPrincipalsOrBuilderList(); /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder getPrincipalsOrBuilder( int index); } /** *
   * Role Based Access Control (RBAC) provides router, virtual host, and route access control for the ALB
   * service. Requests are allowed or denied based on the `action` and whether a matching principal is
   * found. For instance, if the action is ALLOW and a matching principal is found the request should be
   * allowed.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.RBAC} */ public static final class RBAC extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.RBAC) RBACOrBuilder { private static final long serialVersionUID = 0L; // Use RBAC.newBuilder() to construct. private RBAC(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private RBAC() { action_ = 0; principals_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new RBAC(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private RBAC( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 8: { int rawValue = input.readEnum(); action_ = rawValue; break; } case 18: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { principals_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000001; } principals_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.parser(), extensionRegistry)); break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { principals_ = java.util.Collections.unmodifiableList(principals_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RBAC_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RBAC_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder.class); } /** * Protobuf enum {@code yandex.cloud.apploadbalancer.v1.RBAC.Action} */ public enum Action implements com.google.protobuf.ProtocolMessageEnum { /** * ACTION_UNSPECIFIED = 0; */ ACTION_UNSPECIFIED(0), /** *
       * Allows the request if and only if there is a principal that matches the request.
       * 
* * ALLOW = 1; */ ALLOW(1), /** *
       * Allows the request if and only if there are no principal that match the request.
       * 
* * DENY = 2; */ DENY(2), UNRECOGNIZED(-1), ; /** * ACTION_UNSPECIFIED = 0; */ public static final int ACTION_UNSPECIFIED_VALUE = 0; /** *
       * Allows the request if and only if there is a principal that matches the request.
       * 
* * ALLOW = 1; */ public static final int ALLOW_VALUE = 1; /** *
       * Allows the request if and only if there are no principal that match the request.
       * 
* * DENY = 2; */ public static final int DENY_VALUE = 2; public final int getNumber() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalArgumentException( "Can't get the number of an unknown enum value."); } return value; } /** * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static Action valueOf(int value) { return forNumber(value); } /** * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. */ public static Action forNumber(int value) { switch (value) { case 0: return ACTION_UNSPECIFIED; case 1: return ALLOW; case 2: return DENY; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { return internalValueMap; } private static final com.google.protobuf.Internal.EnumLiteMap< Action> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap() { public Action findValueByNumber(int number) { return Action.forNumber(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalStateException( "Can't get the descriptor of an unrecognized enum value."); } return getDescriptor().getValues().get(ordinal()); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.getDescriptor().getEnumTypes().get(0); } private static final Action[] VALUES = values(); public static Action valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } if (desc.getIndex() == -1) { return UNRECOGNIZED; } return VALUES[desc.getIndex()]; } private final int value; private Action(int value) { this.value = value; } // @@protoc_insertion_point(enum_scope:yandex.cloud.apploadbalancer.v1.RBAC.Action) } public static final int ACTION_FIELD_NUMBER = 1; private int action_; /** *
     * The action to take if a principal matches. Every action either allows or denies a request.
     * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return The enum numeric value on the wire for action. */ @java.lang.Override public int getActionValue() { return action_; } /** *
     * The action to take if a principal matches. Every action either allows or denies a request.
     * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return The action. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action getAction() { @SuppressWarnings("deprecation") yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action result = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action.valueOf(action_); return result == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action.UNRECOGNIZED : result; } public static final int PRINCIPALS_FIELD_NUMBER = 2; private java.util.List principals_; /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public java.util.List getPrincipalsList() { return principals_; } /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public java.util.List getPrincipalsOrBuilderList() { return principals_; } /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public int getPrincipalsCount() { return principals_.size(); } /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals getPrincipals(int index) { return principals_.get(index); } /** *
     * Required. A match occurs when at least one matches the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder getPrincipalsOrBuilder( int index) { return principals_.get(index); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action.ACTION_UNSPECIFIED.getNumber()) { output.writeEnum(1, action_); } for (int i = 0; i < principals_.size(); i++) { output.writeMessage(2, principals_.get(i)); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action.ACTION_UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, action_); } for (int i = 0; i < principals_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, principals_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC) obj; if (action_ != other.action_) return false; if (!getPrincipalsList() .equals(other.getPrincipalsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + ACTION_FIELD_NUMBER; hash = (53 * hash) + action_; if (getPrincipalsCount() > 0) { hash = (37 * hash) + PRINCIPALS_FIELD_NUMBER; hash = (53 * hash) + getPrincipalsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * Role Based Access Control (RBAC) provides router, virtual host, and route access control for the ALB
     * service. Requests are allowed or denied based on the `action` and whether a matching principal is
     * found. For instance, if the action is ALLOW and a matching principal is found the request should be
     * allowed.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.RBAC} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.RBAC) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBACOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RBAC_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RBAC_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getPrincipalsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); action_ = 0; if (principalsBuilder_ == null) { principals_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { principalsBuilder_.clear(); } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RBAC_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC(this); int from_bitField0_ = bitField0_; result.action_ = action_; if (principalsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { principals_ = java.util.Collections.unmodifiableList(principals_); bitField0_ = (bitField0_ & ~0x00000001); } result.principals_ = principals_; } else { result.principals_ = principalsBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.getDefaultInstance()) return this; if (other.action_ != 0) { setActionValue(other.getActionValue()); } if (principalsBuilder_ == null) { if (!other.principals_.isEmpty()) { if (principals_.isEmpty()) { principals_ = other.principals_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensurePrincipalsIsMutable(); principals_.addAll(other.principals_); } onChanged(); } } else { if (!other.principals_.isEmpty()) { if (principalsBuilder_.isEmpty()) { principalsBuilder_.dispose(); principalsBuilder_ = null; principals_ = other.principals_; bitField0_ = (bitField0_ & ~0x00000001); principalsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getPrincipalsFieldBuilder() : null; } else { principalsBuilder_.addAllMessages(other.principals_); } } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private int action_ = 0; /** *
       * The action to take if a principal matches. Every action either allows or denies a request.
       * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return The enum numeric value on the wire for action. */ @java.lang.Override public int getActionValue() { return action_; } /** *
       * The action to take if a principal matches. Every action either allows or denies a request.
       * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @param value The enum numeric value on the wire for action to set. * @return This builder for chaining. */ public Builder setActionValue(int value) { action_ = value; onChanged(); return this; } /** *
       * The action to take if a principal matches. Every action either allows or denies a request.
       * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return The action. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action getAction() { @SuppressWarnings("deprecation") yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action result = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action.valueOf(action_); return result == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action.UNRECOGNIZED : result; } /** *
       * The action to take if a principal matches. Every action either allows or denies a request.
       * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @param value The action to set. * @return This builder for chaining. */ public Builder setAction(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC.Action value) { if (value == null) { throw new NullPointerException(); } action_ = value.getNumber(); onChanged(); return this; } /** *
       * The action to take if a principal matches. Every action either allows or denies a request.
       * 
* * .yandex.cloud.apploadbalancer.v1.RBAC.Action action = 1 [(.yandex.cloud.required) = true]; * @return This builder for chaining. */ public Builder clearAction() { action_ = 0; onChanged(); return this; } private java.util.List principals_ = java.util.Collections.emptyList(); private void ensurePrincipalsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { principals_ = new java.util.ArrayList(principals_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder> principalsBuilder_; /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public java.util.List getPrincipalsList() { if (principalsBuilder_ == null) { return java.util.Collections.unmodifiableList(principals_); } else { return principalsBuilder_.getMessageList(); } } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public int getPrincipalsCount() { if (principalsBuilder_ == null) { return principals_.size(); } else { return principalsBuilder_.getCount(); } } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals getPrincipals(int index) { if (principalsBuilder_ == null) { return principals_.get(index); } else { return principalsBuilder_.getMessage(index); } } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder setPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals value) { if (principalsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensurePrincipalsIsMutable(); principals_.set(index, value); onChanged(); } else { principalsBuilder_.setMessage(index, value); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder setPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder builderForValue) { if (principalsBuilder_ == null) { ensurePrincipalsIsMutable(); principals_.set(index, builderForValue.build()); onChanged(); } else { principalsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder addPrincipals(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals value) { if (principalsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensurePrincipalsIsMutable(); principals_.add(value); onChanged(); } else { principalsBuilder_.addMessage(value); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder addPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals value) { if (principalsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensurePrincipalsIsMutable(); principals_.add(index, value); onChanged(); } else { principalsBuilder_.addMessage(index, value); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder addPrincipals( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder builderForValue) { if (principalsBuilder_ == null) { ensurePrincipalsIsMutable(); principals_.add(builderForValue.build()); onChanged(); } else { principalsBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder addPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder builderForValue) { if (principalsBuilder_ == null) { ensurePrincipalsIsMutable(); principals_.add(index, builderForValue.build()); onChanged(); } else { principalsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder addAllPrincipals( java.lang.Iterable values) { if (principalsBuilder_ == null) { ensurePrincipalsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, principals_); onChanged(); } else { principalsBuilder_.addAllMessages(values); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder clearPrincipals() { if (principalsBuilder_ == null) { principals_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { principalsBuilder_.clear(); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public Builder removePrincipals(int index) { if (principalsBuilder_ == null) { ensurePrincipalsIsMutable(); principals_.remove(index); onChanged(); } else { principalsBuilder_.remove(index); } return this; } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder getPrincipalsBuilder( int index) { return getPrincipalsFieldBuilder().getBuilder(index); } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder getPrincipalsOrBuilder( int index) { if (principalsBuilder_ == null) { return principals_.get(index); } else { return principalsBuilder_.getMessageOrBuilder(index); } } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public java.util.List getPrincipalsOrBuilderList() { if (principalsBuilder_ != null) { return principalsBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(principals_); } } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder addPrincipalsBuilder() { return getPrincipalsFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.getDefaultInstance()); } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder addPrincipalsBuilder( int index) { return getPrincipalsFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.getDefaultInstance()); } /** *
       * Required. A match occurs when at least one matches the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principals principals = 2 [(.yandex.cloud.size) = ">=1"]; */ public java.util.List getPrincipalsBuilderList() { return getPrincipalsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder> getPrincipalsFieldBuilder() { if (principalsBuilder_ == null) { principalsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder>( principals_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); principals_ = null; } return principalsBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.RBAC) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.RBAC) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public RBAC parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new RBAC(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RBAC getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface PrincipalsOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.Principals) com.google.protobuf.MessageOrBuilder { /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ java.util.List getAndPrincipalsList(); /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal getAndPrincipals(int index); /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ int getAndPrincipalsCount(); /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ java.util.List getAndPrincipalsOrBuilderList(); /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder getAndPrincipalsOrBuilder( int index); } /** *
   * Principals define a group of identities for a request.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Principals} */ public static final class Principals extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.Principals) PrincipalsOrBuilder { private static final long serialVersionUID = 0L; // Use Principals.newBuilder() to construct. private Principals(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private Principals() { andPrincipals_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new Principals(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Principals( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { andPrincipals_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000001; } andPrincipals_.add( input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.parser(), extensionRegistry)); break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { andPrincipals_ = java.util.Collections.unmodifiableList(andPrincipals_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principals_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principals_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder.class); } public static final int AND_PRINCIPALS_FIELD_NUMBER = 1; private java.util.List andPrincipals_; /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public java.util.List getAndPrincipalsList() { return andPrincipals_; } /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public java.util.List getAndPrincipalsOrBuilderList() { return andPrincipals_; } /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public int getAndPrincipalsCount() { return andPrincipals_.size(); } /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal getAndPrincipals(int index) { return andPrincipals_.get(index); } /** *
     * Required. A match occurs when all principals match the request.
     * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder getAndPrincipalsOrBuilder( int index) { return andPrincipals_.get(index); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < andPrincipals_.size(); i++) { output.writeMessage(1, andPrincipals_.get(i)); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; for (int i = 0; i < andPrincipals_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, andPrincipals_.get(i)); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals) obj; if (!getAndPrincipalsList() .equals(other.getAndPrincipalsList())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (getAndPrincipalsCount() > 0) { hash = (37 * hash) + AND_PRINCIPALS_FIELD_NUMBER; hash = (53 * hash) + getAndPrincipalsList().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * Principals define a group of identities for a request.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Principals} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.Principals) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principals_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principals_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getAndPrincipalsFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); if (andPrincipalsBuilder_ == null) { andPrincipals_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); } else { andPrincipalsBuilder_.clear(); } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principals_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals(this); int from_bitField0_ = bitField0_; if (andPrincipalsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { andPrincipals_ = java.util.Collections.unmodifiableList(andPrincipals_); bitField0_ = (bitField0_ & ~0x00000001); } result.andPrincipals_ = andPrincipals_; } else { result.andPrincipals_ = andPrincipalsBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals.getDefaultInstance()) return this; if (andPrincipalsBuilder_ == null) { if (!other.andPrincipals_.isEmpty()) { if (andPrincipals_.isEmpty()) { andPrincipals_ = other.andPrincipals_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureAndPrincipalsIsMutable(); andPrincipals_.addAll(other.andPrincipals_); } onChanged(); } } else { if (!other.andPrincipals_.isEmpty()) { if (andPrincipalsBuilder_.isEmpty()) { andPrincipalsBuilder_.dispose(); andPrincipalsBuilder_ = null; andPrincipals_ = other.andPrincipals_; bitField0_ = (bitField0_ & ~0x00000001); andPrincipalsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getAndPrincipalsFieldBuilder() : null; } else { andPrincipalsBuilder_.addAllMessages(other.andPrincipals_); } } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private java.util.List andPrincipals_ = java.util.Collections.emptyList(); private void ensureAndPrincipalsIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { andPrincipals_ = new java.util.ArrayList(andPrincipals_); bitField0_ |= 0x00000001; } } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder> andPrincipalsBuilder_; /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public java.util.List getAndPrincipalsList() { if (andPrincipalsBuilder_ == null) { return java.util.Collections.unmodifiableList(andPrincipals_); } else { return andPrincipalsBuilder_.getMessageList(); } } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public int getAndPrincipalsCount() { if (andPrincipalsBuilder_ == null) { return andPrincipals_.size(); } else { return andPrincipalsBuilder_.getCount(); } } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal getAndPrincipals(int index) { if (andPrincipalsBuilder_ == null) { return andPrincipals_.get(index); } else { return andPrincipalsBuilder_.getMessage(index); } } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder setAndPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal value) { if (andPrincipalsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureAndPrincipalsIsMutable(); andPrincipals_.set(index, value); onChanged(); } else { andPrincipalsBuilder_.setMessage(index, value); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder setAndPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder builderForValue) { if (andPrincipalsBuilder_ == null) { ensureAndPrincipalsIsMutable(); andPrincipals_.set(index, builderForValue.build()); onChanged(); } else { andPrincipalsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder addAndPrincipals(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal value) { if (andPrincipalsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureAndPrincipalsIsMutable(); andPrincipals_.add(value); onChanged(); } else { andPrincipalsBuilder_.addMessage(value); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder addAndPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal value) { if (andPrincipalsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureAndPrincipalsIsMutable(); andPrincipals_.add(index, value); onChanged(); } else { andPrincipalsBuilder_.addMessage(index, value); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder addAndPrincipals( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder builderForValue) { if (andPrincipalsBuilder_ == null) { ensureAndPrincipalsIsMutable(); andPrincipals_.add(builderForValue.build()); onChanged(); } else { andPrincipalsBuilder_.addMessage(builderForValue.build()); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder addAndPrincipals( int index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder builderForValue) { if (andPrincipalsBuilder_ == null) { ensureAndPrincipalsIsMutable(); andPrincipals_.add(index, builderForValue.build()); onChanged(); } else { andPrincipalsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder addAllAndPrincipals( java.lang.Iterable values) { if (andPrincipalsBuilder_ == null) { ensureAndPrincipalsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, andPrincipals_); onChanged(); } else { andPrincipalsBuilder_.addAllMessages(values); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder clearAndPrincipals() { if (andPrincipalsBuilder_ == null) { andPrincipals_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); } else { andPrincipalsBuilder_.clear(); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public Builder removeAndPrincipals(int index) { if (andPrincipalsBuilder_ == null) { ensureAndPrincipalsIsMutable(); andPrincipals_.remove(index); onChanged(); } else { andPrincipalsBuilder_.remove(index); } return this; } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder getAndPrincipalsBuilder( int index) { return getAndPrincipalsFieldBuilder().getBuilder(index); } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder getAndPrincipalsOrBuilder( int index) { if (andPrincipalsBuilder_ == null) { return andPrincipals_.get(index); } else { return andPrincipalsBuilder_.getMessageOrBuilder(index); } } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public java.util.List getAndPrincipalsOrBuilderList() { if (andPrincipalsBuilder_ != null) { return andPrincipalsBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(andPrincipals_); } } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder addAndPrincipalsBuilder() { return getAndPrincipalsFieldBuilder().addBuilder( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.getDefaultInstance()); } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder addAndPrincipalsBuilder( int index) { return getAndPrincipalsFieldBuilder().addBuilder( index, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.getDefaultInstance()); } /** *
       * Required. A match occurs when all principals match the request.
       * 
* * repeated .yandex.cloud.apploadbalancer.v1.Principal and_principals = 1 [(.yandex.cloud.size) = ">=1"]; */ public java.util.List getAndPrincipalsBuilderList() { return getAndPrincipalsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder> getAndPrincipalsFieldBuilder() { if (andPrincipalsBuilder_ == null) { andPrincipalsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder>( andPrincipals_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); andPrincipals_ = null; } return andPrincipalsBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.Principals) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Principals) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public Principals parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Principals(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principals getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface PrincipalOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.Principal) com.google.protobuf.MessageOrBuilder { /** *
     * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
     * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; * @return Whether the header field is set. */ boolean hasHeader(); /** *
     * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
     * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; * @return The header. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher getHeader(); /** *
     * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
     * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder getHeaderOrBuilder(); /** *
     * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
     * 
* * string remote_ip = 2; * @return Whether the remoteIp field is set. */ boolean hasRemoteIp(); /** *
     * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
     * 
* * string remote_ip = 2; * @return The remoteIp. */ java.lang.String getRemoteIp(); /** *
     * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
     * 
* * string remote_ip = 2; * @return The bytes for remoteIp. */ com.google.protobuf.ByteString getRemoteIpBytes(); /** *
     * When any is set, it matches any request.
     * 
* * bool any = 3; * @return Whether the any field is set. */ boolean hasAny(); /** *
     * When any is set, it matches any request.
     * 
* * bool any = 3; * @return The any. */ boolean getAny(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.IdentifierCase getIdentifierCase(); } /** *
   * Principal defines an identity for a request.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Principal} */ public static final class Principal extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.Principal) PrincipalOrBuilder { private static final long serialVersionUID = 0L; // Use Principal.newBuilder() to construct. private Principal(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private Principal() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new Principal(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Principal( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder subBuilder = null; if (identifierCase_ == 1) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_).toBuilder(); } identifier_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_); identifier_ = subBuilder.buildPartial(); } identifierCase_ = 1; break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); identifierCase_ = 2; identifier_ = s; break; } case 24: { identifier_ = input.readBool(); identifierCase_ = 3; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder.class); } public interface HeaderMatcherOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher) com.google.protobuf.MessageOrBuilder { /** *
       * Specifies the name of the header in the request.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ java.lang.String getName(); /** *
       * Specifies the name of the header in the request.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ com.google.protobuf.ByteString getNameBytes(); /** *
       * Specifies how the header match will be performed to route the request.
       * In the absence of value a request that has specified header name will match,
       * regardless of the header's value.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; * @return Whether the value field is set. */ boolean hasValue(); /** *
       * Specifies how the header match will be performed to route the request.
       * In the absence of value a request that has specified header name will match,
       * regardless of the header's value.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; * @return The value. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getValue(); /** *
       * Specifies how the header match will be performed to route the request.
       * In the absence of value a request that has specified header name will match,
       * regardless of the header's value.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getValueOrBuilder(); } /** * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher} */ public static final class HeaderMatcher extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher) HeaderMatcherOrBuilder { private static final long serialVersionUID = 0L; // Use HeaderMatcher.newBuilder() to construct. private HeaderMatcher(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private HeaderMatcher() { name_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new HeaderMatcher(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private HeaderMatcher( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); name_ = s; break; } case 18: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder subBuilder = null; if (value_ != null) { subBuilder = value_.toBuilder(); } value_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(value_); value_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder.class); } public static final int NAME_FIELD_NUMBER = 1; private volatile java.lang.Object name_; /** *
       * Specifies the name of the header in the request.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** *
       * Specifies the name of the header in the request.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int VALUE_FIELD_NUMBER = 2; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value_; /** *
       * Specifies how the header match will be performed to route the request.
       * In the absence of value a request that has specified header name will match,
       * regardless of the header's value.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; * @return Whether the value field is set. */ @java.lang.Override public boolean hasValue() { return value_ != null; } /** *
       * Specifies how the header match will be performed to route the request.
       * In the absence of value a request that has specified header name will match,
       * regardless of the header's value.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; * @return The value. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getValue() { return value_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : value_; } /** *
       * Specifies how the header match will be performed to route the request.
       * In the absence of value a request that has specified header name will match,
       * regardless of the header's value.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getValueOrBuilder() { return getValue(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (value_ != null) { output.writeMessage(2, getValue()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (value_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getValue()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) obj; if (!getName() .equals(other.getName())) return false; if (hasValue() != other.hasValue()) return false; if (hasValue()) { if (!getValue() .equals(other.getValue())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); if (hasValue()) { hash = (37 * hash) + VALUE_FIELD_NUMBER; hash = (53 * hash) + getValue().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); name_ = ""; if (valueBuilder_ == null) { value_ = null; } else { value_ = null; valueBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher(this); result.name_ = name_; if (valueBuilder_ == null) { result.value_ = value_; } else { result.value_ = valueBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; onChanged(); } if (other.hasValue()) { mergeValue(other.getValue()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private java.lang.Object name_ = ""; /** *
         * Specifies the name of the header in the request.
         * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** *
         * Specifies the name of the header in the request.
         * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
         * Specifies the name of the header in the request.
         * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @param value The name to set. * @return This builder for chaining. */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; onChanged(); return this; } /** *
         * Specifies the name of the header in the request.
         * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); onChanged(); return this; } /** *
         * Specifies the name of the header in the request.
         * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; onChanged(); return this; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder> valueBuilder_; /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; * @return Whether the value field is set. */ public boolean hasValue() { return valueBuilder_ != null || value_ != null; } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; * @return The value. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getValue() { if (valueBuilder_ == null) { return value_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : value_; } else { return valueBuilder_.getMessage(); } } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ public Builder setValue(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value) { if (valueBuilder_ == null) { if (value == null) { throw new NullPointerException(); } value_ = value; onChanged(); } else { valueBuilder_.setMessage(value); } return this; } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ public Builder setValue( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder builderForValue) { if (valueBuilder_ == null) { value_ = builderForValue.build(); onChanged(); } else { valueBuilder_.setMessage(builderForValue.build()); } return this; } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ public Builder mergeValue(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value) { if (valueBuilder_ == null) { if (value_ != null) { value_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.newBuilder(value_).mergeFrom(value).buildPartial(); } else { value_ = value; } onChanged(); } else { valueBuilder_.mergeFrom(value); } return this; } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ public Builder clearValue() { if (valueBuilder_ == null) { value_ = null; onChanged(); } else { value_ = null; valueBuilder_ = null; } return this; } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder getValueBuilder() { onChanged(); return getValueFieldBuilder().getBuilder(); } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getValueOrBuilder() { if (valueBuilder_ != null) { return valueBuilder_.getMessageOrBuilder(); } else { return value_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : value_; } } /** *
         * Specifies how the header match will be performed to route the request.
         * In the absence of value a request that has specified header name will match,
         * regardless of the header's value.
         * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch value = 2; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder> getValueFieldBuilder() { if (valueBuilder_ == null) { valueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder>( getValue(), getParentForChildren(), isClean()); value_ = null; } return valueBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public HeaderMatcher parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new HeaderMatcher(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } private int identifierCase_ = 0; private java.lang.Object identifier_; public enum IdentifierCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { HEADER(1), REMOTE_IP(2), ANY(3), IDENTIFIER_NOT_SET(0); private final int value; private IdentifierCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static IdentifierCase valueOf(int value) { return forNumber(value); } public static IdentifierCase forNumber(int value) { switch (value) { case 1: return HEADER; case 2: return REMOTE_IP; case 3: return ANY; case 0: return IDENTIFIER_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public IdentifierCase getIdentifierCase() { return IdentifierCase.forNumber( identifierCase_); } public static final int HEADER_FIELD_NUMBER = 1; /** *
     * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
     * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; * @return Whether the header field is set. */ @java.lang.Override public boolean hasHeader() { return identifierCase_ == 1; } /** *
     * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
     * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; * @return The header. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher getHeader() { if (identifierCase_ == 1) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } /** *
     * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
     * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder getHeaderOrBuilder() { if (identifierCase_ == 1) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } public static final int REMOTE_IP_FIELD_NUMBER = 2; /** *
     * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
     * 
* * string remote_ip = 2; * @return Whether the remoteIp field is set. */ public boolean hasRemoteIp() { return identifierCase_ == 2; } /** *
     * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
     * 
* * string remote_ip = 2; * @return The remoteIp. */ public java.lang.String getRemoteIp() { java.lang.Object ref = ""; if (identifierCase_ == 2) { ref = identifier_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (identifierCase_ == 2) { identifier_ = s; } return s; } } /** *
     * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
     * 
* * string remote_ip = 2; * @return The bytes for remoteIp. */ public com.google.protobuf.ByteString getRemoteIpBytes() { java.lang.Object ref = ""; if (identifierCase_ == 2) { ref = identifier_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (identifierCase_ == 2) { identifier_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int ANY_FIELD_NUMBER = 3; /** *
     * When any is set, it matches any request.
     * 
* * bool any = 3; * @return Whether the any field is set. */ @java.lang.Override public boolean hasAny() { return identifierCase_ == 3; } /** *
     * When any is set, it matches any request.
     * 
* * bool any = 3; * @return The any. */ @java.lang.Override public boolean getAny() { if (identifierCase_ == 3) { return (java.lang.Boolean) identifier_; } return false; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (identifierCase_ == 1) { output.writeMessage(1, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_); } if (identifierCase_ == 2) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, identifier_); } if (identifierCase_ == 3) { output.writeBool( 3, (boolean)((java.lang.Boolean) identifier_)); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (identifierCase_ == 1) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_); } if (identifierCase_ == 2) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, identifier_); } if (identifierCase_ == 3) { size += com.google.protobuf.CodedOutputStream .computeBoolSize( 3, (boolean)((java.lang.Boolean) identifier_)); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal) obj; if (!getIdentifierCase().equals(other.getIdentifierCase())) return false; switch (identifierCase_) { case 1: if (!getHeader() .equals(other.getHeader())) return false; break; case 2: if (!getRemoteIp() .equals(other.getRemoteIp())) return false; break; case 3: if (getAny() != other.getAny()) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); switch (identifierCase_) { case 1: hash = (37 * hash) + HEADER_FIELD_NUMBER; hash = (53 * hash) + getHeader().hashCode(); break; case 2: hash = (37 * hash) + REMOTE_IP_FIELD_NUMBER; hash = (53 * hash) + getRemoteIp().hashCode(); break; case 3: hash = (37 * hash) + ANY_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getAny()); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * Principal defines an identity for a request.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Principal} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.Principal) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.PrincipalOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); identifierCase_ = 0; identifier_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal(this); if (identifierCase_ == 1) { if (headerBuilder_ == null) { result.identifier_ = identifier_; } else { result.identifier_ = headerBuilder_.build(); } } if (identifierCase_ == 2) { result.identifier_ = identifier_; } if (identifierCase_ == 3) { result.identifier_ = identifier_; } result.identifierCase_ = identifierCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.getDefaultInstance()) return this; switch (other.getIdentifierCase()) { case HEADER: { mergeHeader(other.getHeader()); break; } case REMOTE_IP: { identifierCase_ = 2; identifier_ = other.identifier_; onChanged(); break; } case ANY: { setAny(other.getAny()); break; } case IDENTIFIER_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int identifierCase_ = 0; private java.lang.Object identifier_; public IdentifierCase getIdentifierCase() { return IdentifierCase.forNumber( identifierCase_); } public Builder clearIdentifier() { identifierCase_ = 0; identifier_ = null; onChanged(); return this; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder> headerBuilder_; /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; * @return Whether the header field is set. */ @java.lang.Override public boolean hasHeader() { return identifierCase_ == 1; } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; * @return The header. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher getHeader() { if (headerBuilder_ == null) { if (identifierCase_ == 1) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } else { if (identifierCase_ == 1) { return headerBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ public Builder setHeader(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher value) { if (headerBuilder_ == null) { if (value == null) { throw new NullPointerException(); } identifier_ = value; onChanged(); } else { headerBuilder_.setMessage(value); } identifierCase_ = 1; return this; } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ public Builder setHeader( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder builderForValue) { if (headerBuilder_ == null) { identifier_ = builderForValue.build(); onChanged(); } else { headerBuilder_.setMessage(builderForValue.build()); } identifierCase_ = 1; return this; } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ public Builder mergeHeader(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher value) { if (headerBuilder_ == null) { if (identifierCase_ == 1 && identifier_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance()) { identifier_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_) .mergeFrom(value).buildPartial(); } else { identifier_ = value; } onChanged(); } else { if (identifierCase_ == 1) { headerBuilder_.mergeFrom(value); } headerBuilder_.setMessage(value); } identifierCase_ = 1; return this; } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ public Builder clearHeader() { if (headerBuilder_ == null) { if (identifierCase_ == 1) { identifierCase_ = 0; identifier_ = null; onChanged(); } } else { if (identifierCase_ == 1) { identifierCase_ = 0; identifier_ = null; } headerBuilder_.clear(); } return this; } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder getHeaderBuilder() { return getHeaderFieldBuilder().getBuilder(); } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder getHeaderOrBuilder() { if ((identifierCase_ == 1) && (headerBuilder_ != null)) { return headerBuilder_.getMessageOrBuilder(); } else { if (identifierCase_ == 1) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } } /** *
       * A header (or pseudo-header such as :path or :method) of the incoming HTTP request.
       * 
* * .yandex.cloud.apploadbalancer.v1.Principal.HeaderMatcher header = 1; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder> getHeaderFieldBuilder() { if (headerBuilder_ == null) { if (!(identifierCase_ == 1)) { identifier_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.getDefaultInstance(); } headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcherOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal.HeaderMatcher) identifier_, getParentForChildren(), isClean()); identifier_ = null; } identifierCase_ = 1; onChanged();; return headerBuilder_; } /** *
       * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
       * 
* * string remote_ip = 2; * @return Whether the remoteIp field is set. */ @java.lang.Override public boolean hasRemoteIp() { return identifierCase_ == 2; } /** *
       * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
       * 
* * string remote_ip = 2; * @return The remoteIp. */ @java.lang.Override public java.lang.String getRemoteIp() { java.lang.Object ref = ""; if (identifierCase_ == 2) { ref = identifier_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (identifierCase_ == 2) { identifier_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
       * 
* * string remote_ip = 2; * @return The bytes for remoteIp. */ @java.lang.Override public com.google.protobuf.ByteString getRemoteIpBytes() { java.lang.Object ref = ""; if (identifierCase_ == 2) { ref = identifier_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (identifierCase_ == 2) { identifier_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
       * 
* * string remote_ip = 2; * @param value The remoteIp to set. * @return This builder for chaining. */ public Builder setRemoteIp( java.lang.String value) { if (value == null) { throw new NullPointerException(); } identifierCase_ = 2; identifier_ = value; onChanged(); return this; } /** *
       * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
       * 
* * string remote_ip = 2; * @return This builder for chaining. */ public Builder clearRemoteIp() { if (identifierCase_ == 2) { identifierCase_ = 0; identifier_ = null; onChanged(); } return this; } /** *
       * A CIDR block or IP that describes the request remote/origin address, e.g. ``192.0.0.0/24`` or``192.0.0.4`` .
       * 
* * string remote_ip = 2; * @param value The bytes for remoteIp to set. * @return This builder for chaining. */ public Builder setRemoteIpBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); identifierCase_ = 2; identifier_ = value; onChanged(); return this; } /** *
       * When any is set, it matches any request.
       * 
* * bool any = 3; * @return Whether the any field is set. */ public boolean hasAny() { return identifierCase_ == 3; } /** *
       * When any is set, it matches any request.
       * 
* * bool any = 3; * @return The any. */ public boolean getAny() { if (identifierCase_ == 3) { return (java.lang.Boolean) identifier_; } return false; } /** *
       * When any is set, it matches any request.
       * 
* * bool any = 3; * @param value The any to set. * @return This builder for chaining. */ public Builder setAny(boolean value) { identifierCase_ = 3; identifier_ = value; onChanged(); return this; } /** *
       * When any is set, it matches any request.
       * 
* * bool any = 3; * @return This builder for chaining. */ public Builder clearAny() { if (identifierCase_ == 3) { identifierCase_ = 0; identifier_ = null; onChanged(); } return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.Principal) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Principal) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public Principal parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Principal(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Principal getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface HeaderModificationOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.HeaderModification) com.google.protobuf.MessageOrBuilder { /** *
     * Name of the header.
     * 
* * string name = 1; * @return The name. */ java.lang.String getName(); /** *
     * Name of the header.
     * 
* * string name = 1; * @return The bytes for name. */ com.google.protobuf.ByteString getNameBytes(); /** *
     * Appends the specified string to the header value.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string append = 2; * @return Whether the append field is set. */ boolean hasAppend(); /** *
     * Appends the specified string to the header value.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string append = 2; * @return The append. */ java.lang.String getAppend(); /** *
     * Appends the specified string to the header value.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string append = 2; * @return The bytes for append. */ com.google.protobuf.ByteString getAppendBytes(); /** *
     * Replaces the value of the header with the specified string.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string replace = 3; * @return Whether the replace field is set. */ boolean hasReplace(); /** *
     * Replaces the value of the header with the specified string.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string replace = 3; * @return The replace. */ java.lang.String getReplace(); /** *
     * Replaces the value of the header with the specified string.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string replace = 3; * @return The bytes for replace. */ com.google.protobuf.ByteString getReplaceBytes(); /** *
     * Removes the header.
     * 
* * bool remove = 4; * @return Whether the remove field is set. */ boolean hasRemove(); /** *
     * Removes the header.
     * 
* * bool remove = 4; * @return The remove. */ boolean getRemove(); /** *
     * Replaces the name of the header with the specified string.
     * This operation is only supported for ALB Virtual Hosts.
     * 
* * string rename = 5; * @return Whether the rename field is set. */ boolean hasRename(); /** *
     * Replaces the name of the header with the specified string.
     * This operation is only supported for ALB Virtual Hosts.
     * 
* * string rename = 5; * @return The rename. */ java.lang.String getRename(); /** *
     * Replaces the name of the header with the specified string.
     * This operation is only supported for ALB Virtual Hosts.
     * 
* * string rename = 5; * @return The bytes for rename. */ com.google.protobuf.ByteString getRenameBytes(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.OperationCase getOperationCase(); } /** *
   * A header modification resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HeaderModification} */ public static final class HeaderModification extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.HeaderModification) HeaderModificationOrBuilder { private static final long serialVersionUID = 0L; // Use HeaderModification.newBuilder() to construct. private HeaderModification(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private HeaderModification() { name_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new HeaderModification(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private HeaderModification( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); name_ = s; break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); operationCase_ = 2; operation_ = s; break; } case 26: { java.lang.String s = input.readStringRequireUtf8(); operationCase_ = 3; operation_ = s; break; } case 32: { operation_ = input.readBool(); operationCase_ = 4; break; } case 42: { java.lang.String s = input.readStringRequireUtf8(); operationCase_ = 5; operation_ = s; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder.class); } private int operationCase_ = 0; private java.lang.Object operation_; public enum OperationCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { APPEND(2), REPLACE(3), REMOVE(4), RENAME(5), OPERATION_NOT_SET(0); private final int value; private OperationCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static OperationCase valueOf(int value) { return forNumber(value); } public static OperationCase forNumber(int value) { switch (value) { case 2: return APPEND; case 3: return REPLACE; case 4: return REMOVE; case 5: return RENAME; case 0: return OPERATION_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public OperationCase getOperationCase() { return OperationCase.forNumber( operationCase_); } public static final int NAME_FIELD_NUMBER = 1; private volatile java.lang.Object name_; /** *
     * Name of the header.
     * 
* * string name = 1; * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** *
     * Name of the header.
     * 
* * string name = 1; * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int APPEND_FIELD_NUMBER = 2; /** *
     * Appends the specified string to the header value.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string append = 2; * @return Whether the append field is set. */ public boolean hasAppend() { return operationCase_ == 2; } /** *
     * Appends the specified string to the header value.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string append = 2; * @return The append. */ public java.lang.String getAppend() { java.lang.Object ref = ""; if (operationCase_ == 2) { ref = operation_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (operationCase_ == 2) { operation_ = s; } return s; } } /** *
     * Appends the specified string to the header value.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string append = 2; * @return The bytes for append. */ public com.google.protobuf.ByteString getAppendBytes() { java.lang.Object ref = ""; if (operationCase_ == 2) { ref = operation_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (operationCase_ == 2) { operation_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REPLACE_FIELD_NUMBER = 3; /** *
     * Replaces the value of the header with the specified string.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string replace = 3; * @return Whether the replace field is set. */ public boolean hasReplace() { return operationCase_ == 3; } /** *
     * Replaces the value of the header with the specified string.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string replace = 3; * @return The replace. */ public java.lang.String getReplace() { java.lang.Object ref = ""; if (operationCase_ == 3) { ref = operation_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (operationCase_ == 3) { operation_ = s; } return s; } } /** *
     * Replaces the value of the header with the specified string.
     * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
     * are supported.
     * 
* * string replace = 3; * @return The bytes for replace. */ public com.google.protobuf.ByteString getReplaceBytes() { java.lang.Object ref = ""; if (operationCase_ == 3) { ref = operation_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (operationCase_ == 3) { operation_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REMOVE_FIELD_NUMBER = 4; /** *
     * Removes the header.
     * 
* * bool remove = 4; * @return Whether the remove field is set. */ @java.lang.Override public boolean hasRemove() { return operationCase_ == 4; } /** *
     * Removes the header.
     * 
* * bool remove = 4; * @return The remove. */ @java.lang.Override public boolean getRemove() { if (operationCase_ == 4) { return (java.lang.Boolean) operation_; } return false; } public static final int RENAME_FIELD_NUMBER = 5; /** *
     * Replaces the name of the header with the specified string.
     * This operation is only supported for ALB Virtual Hosts.
     * 
* * string rename = 5; * @return Whether the rename field is set. */ public boolean hasRename() { return operationCase_ == 5; } /** *
     * Replaces the name of the header with the specified string.
     * This operation is only supported for ALB Virtual Hosts.
     * 
* * string rename = 5; * @return The rename. */ public java.lang.String getRename() { java.lang.Object ref = ""; if (operationCase_ == 5) { ref = operation_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (operationCase_ == 5) { operation_ = s; } return s; } } /** *
     * Replaces the name of the header with the specified string.
     * This operation is only supported for ALB Virtual Hosts.
     * 
* * string rename = 5; * @return The bytes for rename. */ public com.google.protobuf.ByteString getRenameBytes() { java.lang.Object ref = ""; if (operationCase_ == 5) { ref = operation_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (operationCase_ == 5) { operation_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (operationCase_ == 2) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, operation_); } if (operationCase_ == 3) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, operation_); } if (operationCase_ == 4) { output.writeBool( 4, (boolean)((java.lang.Boolean) operation_)); } if (operationCase_ == 5) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, operation_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (operationCase_ == 2) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, operation_); } if (operationCase_ == 3) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, operation_); } if (operationCase_ == 4) { size += com.google.protobuf.CodedOutputStream .computeBoolSize( 4, (boolean)((java.lang.Boolean) operation_)); } if (operationCase_ == 5) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, operation_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification) obj; if (!getName() .equals(other.getName())) return false; if (!getOperationCase().equals(other.getOperationCase())) return false; switch (operationCase_) { case 2: if (!getAppend() .equals(other.getAppend())) return false; break; case 3: if (!getReplace() .equals(other.getReplace())) return false; break; case 4: if (getRemove() != other.getRemove()) return false; break; case 5: if (!getRename() .equals(other.getRename())) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); switch (operationCase_) { case 2: hash = (37 * hash) + APPEND_FIELD_NUMBER; hash = (53 * hash) + getAppend().hashCode(); break; case 3: hash = (37 * hash) + REPLACE_FIELD_NUMBER; hash = (53 * hash) + getReplace().hashCode(); break; case 4: hash = (37 * hash) + REMOVE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getRemove()); break; case 5: hash = (37 * hash) + RENAME_FIELD_NUMBER; hash = (53 * hash) + getRename().hashCode(); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A header modification resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HeaderModification} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.HeaderModification) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModificationOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); name_ = ""; operationCase_ = 0; operation_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification(this); result.name_ = name_; if (operationCase_ == 2) { result.operation_ = operation_; } if (operationCase_ == 3) { result.operation_ = operation_; } if (operationCase_ == 4) { result.operation_ = operation_; } if (operationCase_ == 5) { result.operation_ = operation_; } result.operationCase_ = operationCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; onChanged(); } switch (other.getOperationCase()) { case APPEND: { operationCase_ = 2; operation_ = other.operation_; onChanged(); break; } case REPLACE: { operationCase_ = 3; operation_ = other.operation_; onChanged(); break; } case REMOVE: { setRemove(other.getRemove()); break; } case RENAME: { operationCase_ = 5; operation_ = other.operation_; onChanged(); break; } case OPERATION_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int operationCase_ = 0; private java.lang.Object operation_; public OperationCase getOperationCase() { return OperationCase.forNumber( operationCase_); } public Builder clearOperation() { operationCase_ = 0; operation_ = null; onChanged(); return this; } private java.lang.Object name_ = ""; /** *
       * Name of the header.
       * 
* * string name = 1; * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * Name of the header.
       * 
* * string name = 1; * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Name of the header.
       * 
* * string name = 1; * @param value The name to set. * @return This builder for chaining. */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; onChanged(); return this; } /** *
       * Name of the header.
       * 
* * string name = 1; * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); onChanged(); return this; } /** *
       * Name of the header.
       * 
* * string name = 1; * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; onChanged(); return this; } /** *
       * Appends the specified string to the header value.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string append = 2; * @return Whether the append field is set. */ @java.lang.Override public boolean hasAppend() { return operationCase_ == 2; } /** *
       * Appends the specified string to the header value.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string append = 2; * @return The append. */ @java.lang.Override public java.lang.String getAppend() { java.lang.Object ref = ""; if (operationCase_ == 2) { ref = operation_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (operationCase_ == 2) { operation_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Appends the specified string to the header value.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string append = 2; * @return The bytes for append. */ @java.lang.Override public com.google.protobuf.ByteString getAppendBytes() { java.lang.Object ref = ""; if (operationCase_ == 2) { ref = operation_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (operationCase_ == 2) { operation_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Appends the specified string to the header value.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string append = 2; * @param value The append to set. * @return This builder for chaining. */ public Builder setAppend( java.lang.String value) { if (value == null) { throw new NullPointerException(); } operationCase_ = 2; operation_ = value; onChanged(); return this; } /** *
       * Appends the specified string to the header value.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string append = 2; * @return This builder for chaining. */ public Builder clearAppend() { if (operationCase_ == 2) { operationCase_ = 0; operation_ = null; onChanged(); } return this; } /** *
       * Appends the specified string to the header value.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string append = 2; * @param value The bytes for append to set. * @return This builder for chaining. */ public Builder setAppendBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); operationCase_ = 2; operation_ = value; onChanged(); return this; } /** *
       * Replaces the value of the header with the specified string.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string replace = 3; * @return Whether the replace field is set. */ @java.lang.Override public boolean hasReplace() { return operationCase_ == 3; } /** *
       * Replaces the value of the header with the specified string.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string replace = 3; * @return The replace. */ @java.lang.Override public java.lang.String getReplace() { java.lang.Object ref = ""; if (operationCase_ == 3) { ref = operation_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (operationCase_ == 3) { operation_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Replaces the value of the header with the specified string.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string replace = 3; * @return The bytes for replace. */ @java.lang.Override public com.google.protobuf.ByteString getReplaceBytes() { java.lang.Object ref = ""; if (operationCase_ == 3) { ref = operation_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (operationCase_ == 3) { operation_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Replaces the value of the header with the specified string.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string replace = 3; * @param value The replace to set. * @return This builder for chaining. */ public Builder setReplace( java.lang.String value) { if (value == null) { throw new NullPointerException(); } operationCase_ = 3; operation_ = value; onChanged(); return this; } /** *
       * Replaces the value of the header with the specified string.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string replace = 3; * @return This builder for chaining. */ public Builder clearReplace() { if (operationCase_ == 3) { operationCase_ = 0; operation_ = null; onChanged(); } return this; } /** *
       * Replaces the value of the header with the specified string.
       * Variables [defined for Envoy proxy](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#custom-request-response-headers)
       * are supported.
       * 
* * string replace = 3; * @param value The bytes for replace to set. * @return This builder for chaining. */ public Builder setReplaceBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); operationCase_ = 3; operation_ = value; onChanged(); return this; } /** *
       * Removes the header.
       * 
* * bool remove = 4; * @return Whether the remove field is set. */ public boolean hasRemove() { return operationCase_ == 4; } /** *
       * Removes the header.
       * 
* * bool remove = 4; * @return The remove. */ public boolean getRemove() { if (operationCase_ == 4) { return (java.lang.Boolean) operation_; } return false; } /** *
       * Removes the header.
       * 
* * bool remove = 4; * @param value The remove to set. * @return This builder for chaining. */ public Builder setRemove(boolean value) { operationCase_ = 4; operation_ = value; onChanged(); return this; } /** *
       * Removes the header.
       * 
* * bool remove = 4; * @return This builder for chaining. */ public Builder clearRemove() { if (operationCase_ == 4) { operationCase_ = 0; operation_ = null; onChanged(); } return this; } /** *
       * Replaces the name of the header with the specified string.
       * This operation is only supported for ALB Virtual Hosts.
       * 
* * string rename = 5; * @return Whether the rename field is set. */ @java.lang.Override public boolean hasRename() { return operationCase_ == 5; } /** *
       * Replaces the name of the header with the specified string.
       * This operation is only supported for ALB Virtual Hosts.
       * 
* * string rename = 5; * @return The rename. */ @java.lang.Override public java.lang.String getRename() { java.lang.Object ref = ""; if (operationCase_ == 5) { ref = operation_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (operationCase_ == 5) { operation_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Replaces the name of the header with the specified string.
       * This operation is only supported for ALB Virtual Hosts.
       * 
* * string rename = 5; * @return The bytes for rename. */ @java.lang.Override public com.google.protobuf.ByteString getRenameBytes() { java.lang.Object ref = ""; if (operationCase_ == 5) { ref = operation_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (operationCase_ == 5) { operation_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Replaces the name of the header with the specified string.
       * This operation is only supported for ALB Virtual Hosts.
       * 
* * string rename = 5; * @param value The rename to set. * @return This builder for chaining. */ public Builder setRename( java.lang.String value) { if (value == null) { throw new NullPointerException(); } operationCase_ = 5; operation_ = value; onChanged(); return this; } /** *
       * Replaces the name of the header with the specified string.
       * This operation is only supported for ALB Virtual Hosts.
       * 
* * string rename = 5; * @return This builder for chaining. */ public Builder clearRename() { if (operationCase_ == 5) { operationCase_ = 0; operation_ = null; onChanged(); } return this; } /** *
       * Replaces the name of the header with the specified string.
       * This operation is only supported for ALB Virtual Hosts.
       * 
* * string rename = 5; * @param value The bytes for rename to set. * @return This builder for chaining. */ public Builder setRenameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); operationCase_ = 5; operation_ = value; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.HeaderModification) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HeaderModification) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public HeaderModification parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new HeaderModification(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HeaderModification getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface RouteOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.Route) com.google.protobuf.MessageOrBuilder { /** *
     * Name of the route.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ java.lang.String getName(); /** *
     * Name of the route.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ com.google.protobuf.ByteString getNameBytes(); /** *
     * HTTP route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; * @return Whether the http field is set. */ boolean hasHttp(); /** *
     * HTTP route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; * @return The http. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute getHttp(); /** *
     * HTTP route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder getHttpOrBuilder(); /** *
     * gRPC route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; * @return Whether the grpc field is set. */ boolean hasGrpc(); /** *
     * gRPC route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; * @return The grpc. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute getGrpc(); /** *
     * gRPC route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder getGrpcOrBuilder(); /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; * @return Whether the routeOptions field is set. */ boolean hasRouteOptions(); /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; * @return The routeOptions. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getRouteOptions(); /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder getRouteOptionsOrBuilder(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.RouteCase getRouteCase(); } /** *
   * A route resource.
   * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Route} */ public static final class Route extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.Route) RouteOrBuilder { private static final long serialVersionUID = 0L; // Use Route.newBuilder() to construct. private Route(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private Route() { name_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new Route(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private Route( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); name_ = s; break; } case 18: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder subBuilder = null; if (routeCase_ == 2) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_).toBuilder(); } route_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_); route_ = subBuilder.buildPartial(); } routeCase_ = 2; break; } case 26: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder subBuilder = null; if (routeCase_ == 3) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_).toBuilder(); } route_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_); route_ = subBuilder.buildPartial(); } routeCase_ = 3; break; } case 34: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder subBuilder = null; if (routeOptions_ != null) { subBuilder = routeOptions_.toBuilder(); } routeOptions_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(routeOptions_); routeOptions_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Route_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Route_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder.class); } private int routeCase_ = 0; private java.lang.Object route_; public enum RouteCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { HTTP(2), GRPC(3), ROUTE_NOT_SET(0); private final int value; private RouteCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static RouteCase valueOf(int value) { return forNumber(value); } public static RouteCase forNumber(int value) { switch (value) { case 2: return HTTP; case 3: return GRPC; case 0: return ROUTE_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public RouteCase getRouteCase() { return RouteCase.forNumber( routeCase_); } public static final int NAME_FIELD_NUMBER = 1; private volatile java.lang.Object name_; /** *
     * Name of the route.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** *
     * Name of the route.
     * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int HTTP_FIELD_NUMBER = 2; /** *
     * HTTP route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; * @return Whether the http field is set. */ @java.lang.Override public boolean hasHttp() { return routeCase_ == 2; } /** *
     * HTTP route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; * @return The http. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute getHttp() { if (routeCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } /** *
     * HTTP route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder getHttpOrBuilder() { if (routeCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } public static final int GRPC_FIELD_NUMBER = 3; /** *
     * gRPC route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; * @return Whether the grpc field is set. */ @java.lang.Override public boolean hasGrpc() { return routeCase_ == 3; } /** *
     * gRPC route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; * @return The grpc. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute getGrpc() { if (routeCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } /** *
     * gRPC route configuration.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder getGrpcOrBuilder() { if (routeCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } public static final int ROUTE_OPTIONS_FIELD_NUMBER = 4; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions routeOptions_; /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; * @return Whether the routeOptions field is set. */ @java.lang.Override public boolean hasRouteOptions() { return routeOptions_ != null; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; * @return The routeOptions. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getRouteOptions() { return routeOptions_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance() : routeOptions_; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder getRouteOptionsOrBuilder() { return getRouteOptions(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (routeCase_ == 2) { output.writeMessage(2, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_); } if (routeCase_ == 3) { output.writeMessage(3, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_); } if (routeOptions_ != null) { output.writeMessage(4, getRouteOptions()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (routeCase_ == 2) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_); } if (routeCase_ == 3) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_); } if (routeOptions_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, getRouteOptions()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route) obj; if (!getName() .equals(other.getName())) return false; if (hasRouteOptions() != other.hasRouteOptions()) return false; if (hasRouteOptions()) { if (!getRouteOptions() .equals(other.getRouteOptions())) return false; } if (!getRouteCase().equals(other.getRouteCase())) return false; switch (routeCase_) { case 2: if (!getHttp() .equals(other.getHttp())) return false; break; case 3: if (!getGrpc() .equals(other.getGrpc())) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); if (hasRouteOptions()) { hash = (37 * hash) + ROUTE_OPTIONS_FIELD_NUMBER; hash = (53 * hash) + getRouteOptions().hashCode(); } switch (routeCase_) { case 2: hash = (37 * hash) + HTTP_FIELD_NUMBER; hash = (53 * hash) + getHttp().hashCode(); break; case 3: hash = (37 * hash) + GRPC_FIELD_NUMBER; hash = (53 * hash) + getGrpc().hashCode(); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A route resource.
     * For details about the concept, see [documentation](/docs/application-load-balancer/concepts/http-router#routes).
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.Route} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.Route) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Route_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Route_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); name_ = ""; if (routeOptionsBuilder_ == null) { routeOptions_ = null; } else { routeOptions_ = null; routeOptionsBuilder_ = null; } routeCase_ = 0; route_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_Route_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route(this); result.name_ = name_; if (routeCase_ == 2) { if (httpBuilder_ == null) { result.route_ = route_; } else { result.route_ = httpBuilder_.build(); } } if (routeCase_ == 3) { if (grpcBuilder_ == null) { result.route_ = route_; } else { result.route_ = grpcBuilder_.build(); } } if (routeOptionsBuilder_ == null) { result.routeOptions_ = routeOptions_; } else { result.routeOptions_ = routeOptionsBuilder_.build(); } result.routeCase_ = routeCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; onChanged(); } if (other.hasRouteOptions()) { mergeRouteOptions(other.getRouteOptions()); } switch (other.getRouteCase()) { case HTTP: { mergeHttp(other.getHttp()); break; } case GRPC: { mergeGrpc(other.getGrpc()); break; } case ROUTE_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int routeCase_ = 0; private java.lang.Object route_; public RouteCase getRouteCase() { return RouteCase.forNumber( routeCase_); } public Builder clearRoute() { routeCase_ = 0; route_ = null; onChanged(); return this; } private java.lang.Object name_ = ""; /** *
       * Name of the route.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * Name of the route.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Name of the route.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @param value The name to set. * @return This builder for chaining. */ public Builder setName( java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; onChanged(); return this; } /** *
       * Name of the route.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); onChanged(); return this; } /** *
       * Name of the route.
       * 
* * string name = 1 [(.yandex.cloud.required) = true]; * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; onChanged(); return this; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder> httpBuilder_; /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; * @return Whether the http field is set. */ @java.lang.Override public boolean hasHttp() { return routeCase_ == 2; } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; * @return The http. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute getHttp() { if (httpBuilder_ == null) { if (routeCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } else { if (routeCase_ == 2) { return httpBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ public Builder setHttp(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute value) { if (httpBuilder_ == null) { if (value == null) { throw new NullPointerException(); } route_ = value; onChanged(); } else { httpBuilder_.setMessage(value); } routeCase_ = 2; return this; } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ public Builder setHttp( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder builderForValue) { if (httpBuilder_ == null) { route_ = builderForValue.build(); onChanged(); } else { httpBuilder_.setMessage(builderForValue.build()); } routeCase_ = 2; return this; } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ public Builder mergeHttp(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute value) { if (httpBuilder_ == null) { if (routeCase_ == 2 && route_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance()) { route_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_) .mergeFrom(value).buildPartial(); } else { route_ = value; } onChanged(); } else { if (routeCase_ == 2) { httpBuilder_.mergeFrom(value); } httpBuilder_.setMessage(value); } routeCase_ = 2; return this; } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ public Builder clearHttp() { if (httpBuilder_ == null) { if (routeCase_ == 2) { routeCase_ = 0; route_ = null; onChanged(); } } else { if (routeCase_ == 2) { routeCase_ = 0; route_ = null; } httpBuilder_.clear(); } return this; } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder getHttpBuilder() { return getHttpFieldBuilder().getBuilder(); } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder getHttpOrBuilder() { if ((routeCase_ == 2) && (httpBuilder_ != null)) { return httpBuilder_.getMessageOrBuilder(); } else { if (routeCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } } /** *
       * HTTP route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRoute http = 2; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder> getHttpFieldBuilder() { if (httpBuilder_ == null) { if (!(routeCase_ == 2)) { route_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } httpBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) route_, getParentForChildren(), isClean()); route_ = null; } routeCase_ = 2; onChanged();; return httpBuilder_; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder> grpcBuilder_; /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; * @return Whether the grpc field is set. */ @java.lang.Override public boolean hasGrpc() { return routeCase_ == 3; } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; * @return The grpc. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute getGrpc() { if (grpcBuilder_ == null) { if (routeCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } else { if (routeCase_ == 3) { return grpcBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ public Builder setGrpc(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute value) { if (grpcBuilder_ == null) { if (value == null) { throw new NullPointerException(); } route_ = value; onChanged(); } else { grpcBuilder_.setMessage(value); } routeCase_ = 3; return this; } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ public Builder setGrpc( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder builderForValue) { if (grpcBuilder_ == null) { route_ = builderForValue.build(); onChanged(); } else { grpcBuilder_.setMessage(builderForValue.build()); } routeCase_ = 3; return this; } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ public Builder mergeGrpc(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute value) { if (grpcBuilder_ == null) { if (routeCase_ == 3 && route_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance()) { route_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_) .mergeFrom(value).buildPartial(); } else { route_ = value; } onChanged(); } else { if (routeCase_ == 3) { grpcBuilder_.mergeFrom(value); } grpcBuilder_.setMessage(value); } routeCase_ = 3; return this; } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ public Builder clearGrpc() { if (grpcBuilder_ == null) { if (routeCase_ == 3) { routeCase_ = 0; route_ = null; onChanged(); } } else { if (routeCase_ == 3) { routeCase_ = 0; route_ = null; } grpcBuilder_.clear(); } return this; } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder getGrpcBuilder() { return getGrpcFieldBuilder().getBuilder(); } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder getGrpcOrBuilder() { if ((routeCase_ == 3) && (grpcBuilder_ != null)) { return grpcBuilder_.getMessageOrBuilder(); } else { if (routeCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } } /** *
       * gRPC route configuration.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRoute grpc = 3; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder> getGrpcFieldBuilder() { if (grpcBuilder_ == null) { if (!(routeCase_ == 3)) { route_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } grpcBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) route_, getParentForChildren(), isClean()); route_ = null; } routeCase_ = 3; onChanged();; return grpcBuilder_; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions routeOptions_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder> routeOptionsBuilder_; /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; * @return Whether the routeOptions field is set. */ public boolean hasRouteOptions() { return routeOptionsBuilder_ != null || routeOptions_ != null; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; * @return The routeOptions. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions getRouteOptions() { if (routeOptionsBuilder_ == null) { return routeOptions_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance() : routeOptions_; } else { return routeOptionsBuilder_.getMessage(); } } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ public Builder setRouteOptions(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions value) { if (routeOptionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } routeOptions_ = value; onChanged(); } else { routeOptionsBuilder_.setMessage(value); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ public Builder setRouteOptions( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder builderForValue) { if (routeOptionsBuilder_ == null) { routeOptions_ = builderForValue.build(); onChanged(); } else { routeOptionsBuilder_.setMessage(builderForValue.build()); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ public Builder mergeRouteOptions(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions value) { if (routeOptionsBuilder_ == null) { if (routeOptions_ != null) { routeOptions_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.newBuilder(routeOptions_).mergeFrom(value).buildPartial(); } else { routeOptions_ = value; } onChanged(); } else { routeOptionsBuilder_.mergeFrom(value); } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ public Builder clearRouteOptions() { if (routeOptionsBuilder_ == null) { routeOptions_ = null; onChanged(); } else { routeOptions_ = null; routeOptionsBuilder_ = null; } return this; } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder getRouteOptionsBuilder() { onChanged(); return getRouteOptionsFieldBuilder().getBuilder(); } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder getRouteOptionsOrBuilder() { if (routeOptionsBuilder_ != null) { return routeOptionsBuilder_.getMessageOrBuilder(); } else { return routeOptions_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.getDefaultInstance() : routeOptions_; } } /** * .yandex.cloud.apploadbalancer.v1.RouteOptions route_options = 4; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder> getRouteOptionsFieldBuilder() { if (routeOptionsBuilder_ == null) { routeOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptions.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RouteOptionsOrBuilder>( getRouteOptions(), getParentForChildren(), isClean()); routeOptions_ = null; } return routeOptionsBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.Route) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.Route) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public Route parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new Route(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.Route getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface HttpRouteOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.HttpRoute) com.google.protobuf.MessageOrBuilder { /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; * @return Whether the match field is set. */ boolean hasMatch(); /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; * @return The match. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch getMatch(); /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder getMatchOrBuilder(); /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; * @return Whether the route field is set. */ boolean hasRoute(); /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; * @return The route. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction getRoute(); /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder getRouteOrBuilder(); /** *
     * Redirects the request as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; * @return Whether the redirect field is set. */ boolean hasRedirect(); /** *
     * Redirects the request as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; * @return The redirect. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction getRedirect(); /** *
     * Redirects the request as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder getRedirectOrBuilder(); /** *
     * Instructs the load balancer to respond directly as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; * @return Whether the directResponse field is set. */ boolean hasDirectResponse(); /** *
     * Instructs the load balancer to respond directly as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; * @return The directResponse. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction getDirectResponse(); /** *
     * Instructs the load balancer to respond directly as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder getDirectResponseOrBuilder(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.ActionCase getActionCase(); } /** *
   * An HTTP route configuration resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HttpRoute} */ public static final class HttpRoute extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.HttpRoute) HttpRouteOrBuilder { private static final long serialVersionUID = 0L; // Use HttpRoute.newBuilder() to construct. private HttpRoute(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private HttpRoute() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new HttpRoute(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private HttpRoute( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder subBuilder = null; if (match_ != null) { subBuilder = match_.toBuilder(); } match_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(match_); match_ = subBuilder.buildPartial(); } break; } case 18: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder subBuilder = null; if (actionCase_ == 2) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_).toBuilder(); } action_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_); action_ = subBuilder.buildPartial(); } actionCase_ = 2; break; } case 26: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder subBuilder = null; if (actionCase_ == 3) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_).toBuilder(); } action_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_); action_ = subBuilder.buildPartial(); } actionCase_ = 3; break; } case 34: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder subBuilder = null; if (actionCase_ == 4) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_).toBuilder(); } action_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_); action_ = subBuilder.buildPartial(); } actionCase_ = 4; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder.class); } private int actionCase_ = 0; private java.lang.Object action_; public enum ActionCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { ROUTE(2), REDIRECT(3), DIRECT_RESPONSE(4), ACTION_NOT_SET(0); private final int value; private ActionCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static ActionCase valueOf(int value) { return forNumber(value); } public static ActionCase forNumber(int value) { switch (value) { case 2: return ROUTE; case 3: return REDIRECT; case 4: return DIRECT_RESPONSE; case 0: return ACTION_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public ActionCase getActionCase() { return ActionCase.forNumber( actionCase_); } public static final int MATCH_FIELD_NUMBER = 1; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch match_; /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; * @return Whether the match field is set. */ @java.lang.Override public boolean hasMatch() { return match_ != null; } /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; * @return The match. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch getMatch() { return match_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.getDefaultInstance() : match_; } /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder getMatchOrBuilder() { return getMatch(); } public static final int ROUTE_FIELD_NUMBER = 2; /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; * @return Whether the route field is set. */ @java.lang.Override public boolean hasRoute() { return actionCase_ == 2; } /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; * @return The route. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction getRoute() { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder getRouteOrBuilder() { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } public static final int REDIRECT_FIELD_NUMBER = 3; /** *
     * Redirects the request as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; * @return Whether the redirect field is set. */ @java.lang.Override public boolean hasRedirect() { return actionCase_ == 3; } /** *
     * Redirects the request as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; * @return The redirect. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction getRedirect() { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } /** *
     * Redirects the request as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder getRedirectOrBuilder() { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } public static final int DIRECT_RESPONSE_FIELD_NUMBER = 4; /** *
     * Instructs the load balancer to respond directly as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; * @return Whether the directResponse field is set. */ @java.lang.Override public boolean hasDirectResponse() { return actionCase_ == 4; } /** *
     * Instructs the load balancer to respond directly as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; * @return The directResponse. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction getDirectResponse() { if (actionCase_ == 4) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } /** *
     * Instructs the load balancer to respond directly as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder getDirectResponseOrBuilder() { if (actionCase_ == 4) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (match_ != null) { output.writeMessage(1, getMatch()); } if (actionCase_ == 2) { output.writeMessage(2, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_); } if (actionCase_ == 3) { output.writeMessage(3, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_); } if (actionCase_ == 4) { output.writeMessage(4, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (match_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getMatch()); } if (actionCase_ == 2) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_); } if (actionCase_ == 3) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_); } if (actionCase_ == 4) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) obj; if (hasMatch() != other.hasMatch()) return false; if (hasMatch()) { if (!getMatch() .equals(other.getMatch())) return false; } if (!getActionCase().equals(other.getActionCase())) return false; switch (actionCase_) { case 2: if (!getRoute() .equals(other.getRoute())) return false; break; case 3: if (!getRedirect() .equals(other.getRedirect())) return false; break; case 4: if (!getDirectResponse() .equals(other.getDirectResponse())) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (hasMatch()) { hash = (37 * hash) + MATCH_FIELD_NUMBER; hash = (53 * hash) + getMatch().hashCode(); } switch (actionCase_) { case 2: hash = (37 * hash) + ROUTE_FIELD_NUMBER; hash = (53 * hash) + getRoute().hashCode(); break; case 3: hash = (37 * hash) + REDIRECT_FIELD_NUMBER; hash = (53 * hash) + getRedirect().hashCode(); break; case 4: hash = (37 * hash) + DIRECT_RESPONSE_FIELD_NUMBER; hash = (53 * hash) + getDirectResponse().hashCode(); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * An HTTP route configuration resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HttpRoute} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.HttpRoute) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); if (matchBuilder_ == null) { match_ = null; } else { match_ = null; matchBuilder_ = null; } actionCase_ = 0; action_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute(this); if (matchBuilder_ == null) { result.match_ = match_; } else { result.match_ = matchBuilder_.build(); } if (actionCase_ == 2) { if (routeBuilder_ == null) { result.action_ = action_; } else { result.action_ = routeBuilder_.build(); } } if (actionCase_ == 3) { if (redirectBuilder_ == null) { result.action_ = action_; } else { result.action_ = redirectBuilder_.build(); } } if (actionCase_ == 4) { if (directResponseBuilder_ == null) { result.action_ = action_; } else { result.action_ = directResponseBuilder_.build(); } } result.actionCase_ = actionCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute.getDefaultInstance()) return this; if (other.hasMatch()) { mergeMatch(other.getMatch()); } switch (other.getActionCase()) { case ROUTE: { mergeRoute(other.getRoute()); break; } case REDIRECT: { mergeRedirect(other.getRedirect()); break; } case DIRECT_RESPONSE: { mergeDirectResponse(other.getDirectResponse()); break; } case ACTION_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int actionCase_ = 0; private java.lang.Object action_; public ActionCase getActionCase() { return ActionCase.forNumber( actionCase_); } public Builder clearAction() { actionCase_ = 0; action_ = null; onChanged(); return this; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch match_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder> matchBuilder_; /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; * @return Whether the match field is set. */ public boolean hasMatch() { return matchBuilder_ != null || match_ != null; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; * @return The match. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch getMatch() { if (matchBuilder_ == null) { return match_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.getDefaultInstance() : match_; } else { return matchBuilder_.getMessage(); } } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ public Builder setMatch(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch value) { if (matchBuilder_ == null) { if (value == null) { throw new NullPointerException(); } match_ = value; onChanged(); } else { matchBuilder_.setMessage(value); } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ public Builder setMatch( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder builderForValue) { if (matchBuilder_ == null) { match_ = builderForValue.build(); onChanged(); } else { matchBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ public Builder mergeMatch(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch value) { if (matchBuilder_ == null) { if (match_ != null) { match_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.newBuilder(match_).mergeFrom(value).buildPartial(); } else { match_ = value; } onChanged(); } else { matchBuilder_.mergeFrom(value); } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ public Builder clearMatch() { if (matchBuilder_ == null) { match_ = null; onChanged(); } else { match_ = null; matchBuilder_ = null; } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder getMatchBuilder() { onChanged(); return getMatchFieldBuilder().getBuilder(); } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder getMatchOrBuilder() { if (matchBuilder_ != null) { return matchBuilder_.getMessageOrBuilder(); } else { return match_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.getDefaultInstance() : match_; } } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteMatch match = 1; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder> getMatchFieldBuilder() { if (matchBuilder_ == null) { matchBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder>( getMatch(), getParentForChildren(), isClean()); match_ = null; } return matchBuilder_; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder> routeBuilder_; /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; * @return Whether the route field is set. */ @java.lang.Override public boolean hasRoute() { return actionCase_ == 2; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; * @return The route. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction getRoute() { if (routeBuilder_ == null) { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } else { if (actionCase_ == 2) { return routeBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ public Builder setRoute(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction value) { if (routeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } action_ = value; onChanged(); } else { routeBuilder_.setMessage(value); } actionCase_ = 2; return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ public Builder setRoute( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder builderForValue) { if (routeBuilder_ == null) { action_ = builderForValue.build(); onChanged(); } else { routeBuilder_.setMessage(builderForValue.build()); } actionCase_ = 2; return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ public Builder mergeRoute(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction value) { if (routeBuilder_ == null) { if (actionCase_ == 2 && action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance()) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_) .mergeFrom(value).buildPartial(); } else { action_ = value; } onChanged(); } else { if (actionCase_ == 2) { routeBuilder_.mergeFrom(value); } routeBuilder_.setMessage(value); } actionCase_ = 2; return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ public Builder clearRoute() { if (routeBuilder_ == null) { if (actionCase_ == 2) { actionCase_ = 0; action_ = null; onChanged(); } } else { if (actionCase_ == 2) { actionCase_ = 0; action_ = null; } routeBuilder_.clear(); } return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder getRouteBuilder() { return getRouteFieldBuilder().getBuilder(); } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder getRouteOrBuilder() { if ((actionCase_ == 2) && (routeBuilder_ != null)) { return routeBuilder_.getMessageOrBuilder(); } else { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.HttpRouteAction route = 2; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder> getRouteFieldBuilder() { if (routeBuilder_ == null) { if (!(actionCase_ == 2)) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } routeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) action_, getParentForChildren(), isClean()); action_ = null; } actionCase_ = 2; onChanged();; return routeBuilder_; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder> redirectBuilder_; /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; * @return Whether the redirect field is set. */ @java.lang.Override public boolean hasRedirect() { return actionCase_ == 3; } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; * @return The redirect. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction getRedirect() { if (redirectBuilder_ == null) { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } else { if (actionCase_ == 3) { return redirectBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ public Builder setRedirect(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction value) { if (redirectBuilder_ == null) { if (value == null) { throw new NullPointerException(); } action_ = value; onChanged(); } else { redirectBuilder_.setMessage(value); } actionCase_ = 3; return this; } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ public Builder setRedirect( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder builderForValue) { if (redirectBuilder_ == null) { action_ = builderForValue.build(); onChanged(); } else { redirectBuilder_.setMessage(builderForValue.build()); } actionCase_ = 3; return this; } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ public Builder mergeRedirect(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction value) { if (redirectBuilder_ == null) { if (actionCase_ == 3 && action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance()) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_) .mergeFrom(value).buildPartial(); } else { action_ = value; } onChanged(); } else { if (actionCase_ == 3) { redirectBuilder_.mergeFrom(value); } redirectBuilder_.setMessage(value); } actionCase_ = 3; return this; } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ public Builder clearRedirect() { if (redirectBuilder_ == null) { if (actionCase_ == 3) { actionCase_ = 0; action_ = null; onChanged(); } } else { if (actionCase_ == 3) { actionCase_ = 0; action_ = null; } redirectBuilder_.clear(); } return this; } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder getRedirectBuilder() { return getRedirectFieldBuilder().getBuilder(); } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder getRedirectOrBuilder() { if ((actionCase_ == 3) && (redirectBuilder_ != null)) { return redirectBuilder_.getMessageOrBuilder(); } else { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } } /** *
       * Redirects the request as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction redirect = 3; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder> getRedirectFieldBuilder() { if (redirectBuilder_ == null) { if (!(actionCase_ == 3)) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } redirectBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) action_, getParentForChildren(), isClean()); action_ = null; } actionCase_ = 3; onChanged();; return redirectBuilder_; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder> directResponseBuilder_; /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; * @return Whether the directResponse field is set. */ @java.lang.Override public boolean hasDirectResponse() { return actionCase_ == 4; } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; * @return The directResponse. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction getDirectResponse() { if (directResponseBuilder_ == null) { if (actionCase_ == 4) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } else { if (actionCase_ == 4) { return directResponseBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ public Builder setDirectResponse(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction value) { if (directResponseBuilder_ == null) { if (value == null) { throw new NullPointerException(); } action_ = value; onChanged(); } else { directResponseBuilder_.setMessage(value); } actionCase_ = 4; return this; } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ public Builder setDirectResponse( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder builderForValue) { if (directResponseBuilder_ == null) { action_ = builderForValue.build(); onChanged(); } else { directResponseBuilder_.setMessage(builderForValue.build()); } actionCase_ = 4; return this; } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ public Builder mergeDirectResponse(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction value) { if (directResponseBuilder_ == null) { if (actionCase_ == 4 && action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance()) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_) .mergeFrom(value).buildPartial(); } else { action_ = value; } onChanged(); } else { if (actionCase_ == 4) { directResponseBuilder_.mergeFrom(value); } directResponseBuilder_.setMessage(value); } actionCase_ = 4; return this; } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ public Builder clearDirectResponse() { if (directResponseBuilder_ == null) { if (actionCase_ == 4) { actionCase_ = 0; action_ = null; onChanged(); } } else { if (actionCase_ == 4) { actionCase_ = 0; action_ = null; } directResponseBuilder_.clear(); } return this; } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder getDirectResponseBuilder() { return getDirectResponseFieldBuilder().getBuilder(); } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder getDirectResponseOrBuilder() { if ((actionCase_ == 4) && (directResponseBuilder_ != null)) { return directResponseBuilder_.getMessageOrBuilder(); } else { if (actionCase_ == 4) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } } /** *
       * Instructs the load balancer to respond directly as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.DirectResponseAction direct_response = 4; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder> getDirectResponseFieldBuilder() { if (directResponseBuilder_ == null) { if (!(actionCase_ == 4)) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } directResponseBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) action_, getParentForChildren(), isClean()); action_ = null; } actionCase_ = 4; onChanged();; return directResponseBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.HttpRoute) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HttpRoute) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public HttpRoute parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new HttpRoute(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRoute getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface GrpcRouteOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.GrpcRoute) com.google.protobuf.MessageOrBuilder { /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; * @return Whether the match field is set. */ boolean hasMatch(); /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; * @return The match. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch getMatch(); /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder getMatchOrBuilder(); /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; * @return Whether the route field is set. */ boolean hasRoute(); /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; * @return The route. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction getRoute(); /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder getRouteOrBuilder(); /** *
     * Instructs the load balancer to respond directly with a specified status.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; * @return Whether the statusResponse field is set. */ boolean hasStatusResponse(); /** *
     * Instructs the load balancer to respond directly with a specified status.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; * @return The statusResponse. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction getStatusResponse(); /** *
     * Instructs the load balancer to respond directly with a specified status.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder getStatusResponseOrBuilder(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.ActionCase getActionCase(); } /** *
   * A gRPC route configuration resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcRoute} */ public static final class GrpcRoute extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.GrpcRoute) GrpcRouteOrBuilder { private static final long serialVersionUID = 0L; // Use GrpcRoute.newBuilder() to construct. private GrpcRoute(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private GrpcRoute() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new GrpcRoute(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private GrpcRoute( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder subBuilder = null; if (match_ != null) { subBuilder = match_.toBuilder(); } match_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(match_); match_ = subBuilder.buildPartial(); } break; } case 18: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder subBuilder = null; if (actionCase_ == 2) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_).toBuilder(); } action_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_); action_ = subBuilder.buildPartial(); } actionCase_ = 2; break; } case 26: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder subBuilder = null; if (actionCase_ == 3) { subBuilder = ((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_).toBuilder(); } action_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_); action_ = subBuilder.buildPartial(); } actionCase_ = 3; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder.class); } private int actionCase_ = 0; private java.lang.Object action_; public enum ActionCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { ROUTE(2), STATUS_RESPONSE(3), ACTION_NOT_SET(0); private final int value; private ActionCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static ActionCase valueOf(int value) { return forNumber(value); } public static ActionCase forNumber(int value) { switch (value) { case 2: return ROUTE; case 3: return STATUS_RESPONSE; case 0: return ACTION_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public ActionCase getActionCase() { return ActionCase.forNumber( actionCase_); } public static final int MATCH_FIELD_NUMBER = 1; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch match_; /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; * @return Whether the match field is set. */ @java.lang.Override public boolean hasMatch() { return match_ != null; } /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; * @return The match. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch getMatch() { return match_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.getDefaultInstance() : match_; } /** *
     * Condition (predicate) used to select the route.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder getMatchOrBuilder() { return getMatch(); } public static final int ROUTE_FIELD_NUMBER = 2; /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; * @return Whether the route field is set. */ @java.lang.Override public boolean hasRoute() { return actionCase_ == 2; } /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; * @return The route. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction getRoute() { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } /** *
     * Forwards the request to a backend group for processing as configured.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder getRouteOrBuilder() { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } public static final int STATUS_RESPONSE_FIELD_NUMBER = 3; /** *
     * Instructs the load balancer to respond directly with a specified status.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; * @return Whether the statusResponse field is set. */ @java.lang.Override public boolean hasStatusResponse() { return actionCase_ == 3; } /** *
     * Instructs the load balancer to respond directly with a specified status.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; * @return The statusResponse. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction getStatusResponse() { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } /** *
     * Instructs the load balancer to respond directly with a specified status.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder getStatusResponseOrBuilder() { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (match_ != null) { output.writeMessage(1, getMatch()); } if (actionCase_ == 2) { output.writeMessage(2, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_); } if (actionCase_ == 3) { output.writeMessage(3, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (match_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getMatch()); } if (actionCase_ == 2) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_); } if (actionCase_ == 3) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) obj; if (hasMatch() != other.hasMatch()) return false; if (hasMatch()) { if (!getMatch() .equals(other.getMatch())) return false; } if (!getActionCase().equals(other.getActionCase())) return false; switch (actionCase_) { case 2: if (!getRoute() .equals(other.getRoute())) return false; break; case 3: if (!getStatusResponse() .equals(other.getStatusResponse())) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (hasMatch()) { hash = (37 * hash) + MATCH_FIELD_NUMBER; hash = (53 * hash) + getMatch().hashCode(); } switch (actionCase_) { case 2: hash = (37 * hash) + ROUTE_FIELD_NUMBER; hash = (53 * hash) + getRoute().hashCode(); break; case 3: hash = (37 * hash) + STATUS_RESPONSE_FIELD_NUMBER; hash = (53 * hash) + getStatusResponse().hashCode(); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A gRPC route configuration resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcRoute} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.GrpcRoute) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); if (matchBuilder_ == null) { match_ = null; } else { match_ = null; matchBuilder_ = null; } actionCase_ = 0; action_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute(this); if (matchBuilder_ == null) { result.match_ = match_; } else { result.match_ = matchBuilder_.build(); } if (actionCase_ == 2) { if (routeBuilder_ == null) { result.action_ = action_; } else { result.action_ = routeBuilder_.build(); } } if (actionCase_ == 3) { if (statusResponseBuilder_ == null) { result.action_ = action_; } else { result.action_ = statusResponseBuilder_.build(); } } result.actionCase_ = actionCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute.getDefaultInstance()) return this; if (other.hasMatch()) { mergeMatch(other.getMatch()); } switch (other.getActionCase()) { case ROUTE: { mergeRoute(other.getRoute()); break; } case STATUS_RESPONSE: { mergeStatusResponse(other.getStatusResponse()); break; } case ACTION_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int actionCase_ = 0; private java.lang.Object action_; public ActionCase getActionCase() { return ActionCase.forNumber( actionCase_); } public Builder clearAction() { actionCase_ = 0; action_ = null; onChanged(); return this; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch match_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder> matchBuilder_; /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; * @return Whether the match field is set. */ public boolean hasMatch() { return matchBuilder_ != null || match_ != null; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; * @return The match. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch getMatch() { if (matchBuilder_ == null) { return match_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.getDefaultInstance() : match_; } else { return matchBuilder_.getMessage(); } } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ public Builder setMatch(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch value) { if (matchBuilder_ == null) { if (value == null) { throw new NullPointerException(); } match_ = value; onChanged(); } else { matchBuilder_.setMessage(value); } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ public Builder setMatch( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder builderForValue) { if (matchBuilder_ == null) { match_ = builderForValue.build(); onChanged(); } else { matchBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ public Builder mergeMatch(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch value) { if (matchBuilder_ == null) { if (match_ != null) { match_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.newBuilder(match_).mergeFrom(value).buildPartial(); } else { match_ = value; } onChanged(); } else { matchBuilder_.mergeFrom(value); } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ public Builder clearMatch() { if (matchBuilder_ == null) { match_ = null; onChanged(); } else { match_ = null; matchBuilder_ = null; } return this; } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder getMatchBuilder() { onChanged(); return getMatchFieldBuilder().getBuilder(); } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder getMatchOrBuilder() { if (matchBuilder_ != null) { return matchBuilder_.getMessageOrBuilder(); } else { return match_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.getDefaultInstance() : match_; } } /** *
       * Condition (predicate) used to select the route.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteMatch match = 1; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder> getMatchFieldBuilder() { if (matchBuilder_ == null) { matchBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder>( getMatch(), getParentForChildren(), isClean()); match_ = null; } return matchBuilder_; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder> routeBuilder_; /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; * @return Whether the route field is set. */ @java.lang.Override public boolean hasRoute() { return actionCase_ == 2; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; * @return The route. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction getRoute() { if (routeBuilder_ == null) { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } else { if (actionCase_ == 2) { return routeBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ public Builder setRoute(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction value) { if (routeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } action_ = value; onChanged(); } else { routeBuilder_.setMessage(value); } actionCase_ = 2; return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ public Builder setRoute( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder builderForValue) { if (routeBuilder_ == null) { action_ = builderForValue.build(); onChanged(); } else { routeBuilder_.setMessage(builderForValue.build()); } actionCase_ = 2; return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ public Builder mergeRoute(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction value) { if (routeBuilder_ == null) { if (actionCase_ == 2 && action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance()) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_) .mergeFrom(value).buildPartial(); } else { action_ = value; } onChanged(); } else { if (actionCase_ == 2) { routeBuilder_.mergeFrom(value); } routeBuilder_.setMessage(value); } actionCase_ = 2; return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ public Builder clearRoute() { if (routeBuilder_ == null) { if (actionCase_ == 2) { actionCase_ = 0; action_ = null; onChanged(); } } else { if (actionCase_ == 2) { actionCase_ = 0; action_ = null; } routeBuilder_.clear(); } return this; } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder getRouteBuilder() { return getRouteFieldBuilder().getBuilder(); } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder getRouteOrBuilder() { if ((actionCase_ == 2) && (routeBuilder_ != null)) { return routeBuilder_.getMessageOrBuilder(); } else { if (actionCase_ == 2) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } } /** *
       * Forwards the request to a backend group for processing as configured.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcRouteAction route = 2; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder> getRouteFieldBuilder() { if (routeBuilder_ == null) { if (!(actionCase_ == 2)) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } routeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) action_, getParentForChildren(), isClean()); action_ = null; } actionCase_ = 2; onChanged();; return routeBuilder_; } private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder> statusResponseBuilder_; /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; * @return Whether the statusResponse field is set. */ @java.lang.Override public boolean hasStatusResponse() { return actionCase_ == 3; } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; * @return The statusResponse. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction getStatusResponse() { if (statusResponseBuilder_ == null) { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } else { if (actionCase_ == 3) { return statusResponseBuilder_.getMessage(); } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ public Builder setStatusResponse(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction value) { if (statusResponseBuilder_ == null) { if (value == null) { throw new NullPointerException(); } action_ = value; onChanged(); } else { statusResponseBuilder_.setMessage(value); } actionCase_ = 3; return this; } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ public Builder setStatusResponse( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder builderForValue) { if (statusResponseBuilder_ == null) { action_ = builderForValue.build(); onChanged(); } else { statusResponseBuilder_.setMessage(builderForValue.build()); } actionCase_ = 3; return this; } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ public Builder mergeStatusResponse(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction value) { if (statusResponseBuilder_ == null) { if (actionCase_ == 3 && action_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance()) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.newBuilder((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_) .mergeFrom(value).buildPartial(); } else { action_ = value; } onChanged(); } else { if (actionCase_ == 3) { statusResponseBuilder_.mergeFrom(value); } statusResponseBuilder_.setMessage(value); } actionCase_ = 3; return this; } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ public Builder clearStatusResponse() { if (statusResponseBuilder_ == null) { if (actionCase_ == 3) { actionCase_ = 0; action_ = null; onChanged(); } } else { if (actionCase_ == 3) { actionCase_ = 0; action_ = null; } statusResponseBuilder_.clear(); } return this; } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder getStatusResponseBuilder() { return getStatusResponseFieldBuilder().getBuilder(); } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder getStatusResponseOrBuilder() { if ((actionCase_ == 3) && (statusResponseBuilder_ != null)) { return statusResponseBuilder_.getMessageOrBuilder(); } else { if (actionCase_ == 3) { return (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_; } return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } } /** *
       * Instructs the load balancer to respond directly with a specified status.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction status_response = 3; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder> getStatusResponseFieldBuilder() { if (statusResponseBuilder_ == null) { if (!(actionCase_ == 3)) { action_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } statusResponseBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder>( (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) action_, getParentForChildren(), isClean()); action_ = null; } actionCase_ = 3; onChanged();; return statusResponseBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.GrpcRoute) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcRoute) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public GrpcRoute parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new GrpcRoute(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRoute getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface HttpRouteMatchOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.HttpRouteMatch) com.google.protobuf.MessageOrBuilder { /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @return A list containing the httpMethod. */ java.util.List getHttpMethodList(); /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @return The count of httpMethod. */ int getHttpMethodCount(); /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @param index The index of the element to return. * @return The httpMethod at the given index. */ java.lang.String getHttpMethod(int index); /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @param index The index of the value to return. * @return The bytes of the httpMethod at the given index. */ com.google.protobuf.ByteString getHttpMethodBytes(int index); /** *
     * Match settings for the path specified in the request.
     * If not specified, the route matches all paths.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; * @return Whether the path field is set. */ boolean hasPath(); /** *
     * Match settings for the path specified in the request.
     * If not specified, the route matches all paths.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; * @return The path. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getPath(); /** *
     * Match settings for the path specified in the request.
     * If not specified, the route matches all paths.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getPathOrBuilder(); } /** *
   * An HTTP route condition (predicate) resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HttpRouteMatch} */ public static final class HttpRouteMatch extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.HttpRouteMatch) HttpRouteMatchOrBuilder { private static final long serialVersionUID = 0L; // Use HttpRouteMatch.newBuilder() to construct. private HttpRouteMatch(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private HttpRouteMatch() { httpMethod_ = com.google.protobuf.LazyStringArrayList.EMPTY; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new HttpRouteMatch(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private HttpRouteMatch( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); if (!((mutable_bitField0_ & 0x00000001) != 0)) { httpMethod_ = new com.google.protobuf.LazyStringArrayList(); mutable_bitField0_ |= 0x00000001; } httpMethod_.add(s); break; } case 18: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder subBuilder = null; if (path_ != null) { subBuilder = path_.toBuilder(); } path_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(path_); path_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { httpMethod_ = httpMethod_.getUnmodifiableView(); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder.class); } public static final int HTTP_METHOD_FIELD_NUMBER = 1; private com.google.protobuf.LazyStringList httpMethod_; /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @return A list containing the httpMethod. */ public com.google.protobuf.ProtocolStringList getHttpMethodList() { return httpMethod_; } /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @return The count of httpMethod. */ public int getHttpMethodCount() { return httpMethod_.size(); } /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @param index The index of the element to return. * @return The httpMethod at the given index. */ public java.lang.String getHttpMethod(int index) { return httpMethod_.get(index); } /** *
     * HTTP method specified in the request.
     * 
* * repeated string http_method = 1; * @param index The index of the value to return. * @return The bytes of the httpMethod at the given index. */ public com.google.protobuf.ByteString getHttpMethodBytes(int index) { return httpMethod_.getByteString(index); } public static final int PATH_FIELD_NUMBER = 2; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch path_; /** *
     * Match settings for the path specified in the request.
     * If not specified, the route matches all paths.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; * @return Whether the path field is set. */ @java.lang.Override public boolean hasPath() { return path_ != null; } /** *
     * Match settings for the path specified in the request.
     * If not specified, the route matches all paths.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; * @return The path. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getPath() { return path_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : path_; } /** *
     * Match settings for the path specified in the request.
     * If not specified, the route matches all paths.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getPathOrBuilder() { return getPath(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < httpMethod_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, httpMethod_.getRaw(i)); } if (path_ != null) { output.writeMessage(2, getPath()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; { int dataSize = 0; for (int i = 0; i < httpMethod_.size(); i++) { dataSize += computeStringSizeNoTag(httpMethod_.getRaw(i)); } size += dataSize; size += 1 * getHttpMethodList().size(); } if (path_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getPath()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch) obj; if (!getHttpMethodList() .equals(other.getHttpMethodList())) return false; if (hasPath() != other.hasPath()) return false; if (hasPath()) { if (!getPath() .equals(other.getPath())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (getHttpMethodCount() > 0) { hash = (37 * hash) + HTTP_METHOD_FIELD_NUMBER; hash = (53 * hash) + getHttpMethodList().hashCode(); } if (hasPath()) { hash = (37 * hash) + PATH_FIELD_NUMBER; hash = (53 * hash) + getPath().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * An HTTP route condition (predicate) resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HttpRouteMatch} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.HttpRouteMatch) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatchOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); httpMethod_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); if (pathBuilder_ == null) { path_ = null; } else { path_ = null; pathBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch(this); int from_bitField0_ = bitField0_; if (((bitField0_ & 0x00000001) != 0)) { httpMethod_ = httpMethod_.getUnmodifiableView(); bitField0_ = (bitField0_ & ~0x00000001); } result.httpMethod_ = httpMethod_; if (pathBuilder_ == null) { result.path_ = path_; } else { result.path_ = pathBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch.getDefaultInstance()) return this; if (!other.httpMethod_.isEmpty()) { if (httpMethod_.isEmpty()) { httpMethod_ = other.httpMethod_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureHttpMethodIsMutable(); httpMethod_.addAll(other.httpMethod_); } onChanged(); } if (other.hasPath()) { mergePath(other.getPath()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.LazyStringList httpMethod_ = com.google.protobuf.LazyStringArrayList.EMPTY; private void ensureHttpMethodIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { httpMethod_ = new com.google.protobuf.LazyStringArrayList(httpMethod_); bitField0_ |= 0x00000001; } } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @return A list containing the httpMethod. */ public com.google.protobuf.ProtocolStringList getHttpMethodList() { return httpMethod_.getUnmodifiableView(); } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @return The count of httpMethod. */ public int getHttpMethodCount() { return httpMethod_.size(); } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @param index The index of the element to return. * @return The httpMethod at the given index. */ public java.lang.String getHttpMethod(int index) { return httpMethod_.get(index); } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @param index The index of the value to return. * @return The bytes of the httpMethod at the given index. */ public com.google.protobuf.ByteString getHttpMethodBytes(int index) { return httpMethod_.getByteString(index); } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @param index The index to set the value at. * @param value The httpMethod to set. * @return This builder for chaining. */ public Builder setHttpMethod( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureHttpMethodIsMutable(); httpMethod_.set(index, value); onChanged(); return this; } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @param value The httpMethod to add. * @return This builder for chaining. */ public Builder addHttpMethod( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureHttpMethodIsMutable(); httpMethod_.add(value); onChanged(); return this; } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @param values The httpMethod to add. * @return This builder for chaining. */ public Builder addAllHttpMethod( java.lang.Iterable values) { ensureHttpMethodIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, httpMethod_); onChanged(); return this; } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @return This builder for chaining. */ public Builder clearHttpMethod() { httpMethod_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** *
       * HTTP method specified in the request.
       * 
* * repeated string http_method = 1; * @param value The bytes of the httpMethod to add. * @return This builder for chaining. */ public Builder addHttpMethodBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureHttpMethodIsMutable(); httpMethod_.add(value); onChanged(); return this; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch path_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder> pathBuilder_; /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; * @return Whether the path field is set. */ public boolean hasPath() { return pathBuilder_ != null || path_ != null; } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; * @return The path. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getPath() { if (pathBuilder_ == null) { return path_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : path_; } else { return pathBuilder_.getMessage(); } } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ public Builder setPath(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value) { if (pathBuilder_ == null) { if (value == null) { throw new NullPointerException(); } path_ = value; onChanged(); } else { pathBuilder_.setMessage(value); } return this; } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ public Builder setPath( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder builderForValue) { if (pathBuilder_ == null) { path_ = builderForValue.build(); onChanged(); } else { pathBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ public Builder mergePath(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value) { if (pathBuilder_ == null) { if (path_ != null) { path_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.newBuilder(path_).mergeFrom(value).buildPartial(); } else { path_ = value; } onChanged(); } else { pathBuilder_.mergeFrom(value); } return this; } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ public Builder clearPath() { if (pathBuilder_ == null) { path_ = null; onChanged(); } else { path_ = null; pathBuilder_ = null; } return this; } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder getPathBuilder() { onChanged(); return getPathFieldBuilder().getBuilder(); } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getPathOrBuilder() { if (pathBuilder_ != null) { return pathBuilder_.getMessageOrBuilder(); } else { return path_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : path_; } } /** *
       * Match settings for the path specified in the request.
       * If not specified, the route matches all paths.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch path = 2; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder> getPathFieldBuilder() { if (pathBuilder_ == null) { pathBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder>( getPath(), getParentForChildren(), isClean()); path_ = null; } return pathBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.HttpRouteMatch) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HttpRouteMatch) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public HttpRouteMatch parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new HttpRouteMatch(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteMatch getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface GrpcRouteMatchOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.GrpcRouteMatch) com.google.protobuf.MessageOrBuilder { /** *
     * Match settings for gRPC service method called in the request.
     * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
     * If not specified, the route matches all methods.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; * @return Whether the fqmn field is set. */ boolean hasFqmn(); /** *
     * Match settings for gRPC service method called in the request.
     * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
     * If not specified, the route matches all methods.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; * @return The fqmn. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getFqmn(); /** *
     * Match settings for gRPC service method called in the request.
     * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
     * If not specified, the route matches all methods.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getFqmnOrBuilder(); } /** *
   * A gRPC route condition (predicate) resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcRouteMatch} */ public static final class GrpcRouteMatch extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.GrpcRouteMatch) GrpcRouteMatchOrBuilder { private static final long serialVersionUID = 0L; // Use GrpcRouteMatch.newBuilder() to construct. private GrpcRouteMatch(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private GrpcRouteMatch() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new GrpcRouteMatch(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private GrpcRouteMatch( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder subBuilder = null; if (fqmn_ != null) { subBuilder = fqmn_.toBuilder(); } fqmn_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(fqmn_); fqmn_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder.class); } public static final int FQMN_FIELD_NUMBER = 1; private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch fqmn_; /** *
     * Match settings for gRPC service method called in the request.
     * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
     * If not specified, the route matches all methods.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; * @return Whether the fqmn field is set. */ @java.lang.Override public boolean hasFqmn() { return fqmn_ != null; } /** *
     * Match settings for gRPC service method called in the request.
     * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
     * If not specified, the route matches all methods.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; * @return The fqmn. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getFqmn() { return fqmn_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : fqmn_; } /** *
     * Match settings for gRPC service method called in the request.
     * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
     * If not specified, the route matches all methods.
     * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getFqmnOrBuilder() { return getFqmn(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (fqmn_ != null) { output.writeMessage(1, getFqmn()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (fqmn_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getFqmn()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch) obj; if (hasFqmn() != other.hasFqmn()) return false; if (hasFqmn()) { if (!getFqmn() .equals(other.getFqmn())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (hasFqmn()) { hash = (37 * hash) + FQMN_FIELD_NUMBER; hash = (53 * hash) + getFqmn().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A gRPC route condition (predicate) resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcRouteMatch} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.GrpcRouteMatch) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatchOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); if (fqmnBuilder_ == null) { fqmn_ = null; } else { fqmn_ = null; fqmnBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch(this); if (fqmnBuilder_ == null) { result.fqmn_ = fqmn_; } else { result.fqmn_ = fqmnBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch.getDefaultInstance()) return this; if (other.hasFqmn()) { mergeFqmn(other.getFqmn()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch fqmn_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder> fqmnBuilder_; /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; * @return Whether the fqmn field is set. */ public boolean hasFqmn() { return fqmnBuilder_ != null || fqmn_ != null; } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; * @return The fqmn. */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getFqmn() { if (fqmnBuilder_ == null) { return fqmn_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : fqmn_; } else { return fqmnBuilder_.getMessage(); } } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ public Builder setFqmn(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value) { if (fqmnBuilder_ == null) { if (value == null) { throw new NullPointerException(); } fqmn_ = value; onChanged(); } else { fqmnBuilder_.setMessage(value); } return this; } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ public Builder setFqmn( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder builderForValue) { if (fqmnBuilder_ == null) { fqmn_ = builderForValue.build(); onChanged(); } else { fqmnBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ public Builder mergeFqmn(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch value) { if (fqmnBuilder_ == null) { if (fqmn_ != null) { fqmn_ = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.newBuilder(fqmn_).mergeFrom(value).buildPartial(); } else { fqmn_ = value; } onChanged(); } else { fqmnBuilder_.mergeFrom(value); } return this; } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ public Builder clearFqmn() { if (fqmnBuilder_ == null) { fqmn_ = null; onChanged(); } else { fqmn_ = null; fqmnBuilder_ = null; } return this; } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder getFqmnBuilder() { onChanged(); return getFqmnFieldBuilder().getBuilder(); } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder getFqmnOrBuilder() { if (fqmnBuilder_ != null) { return fqmnBuilder_.getMessageOrBuilder(); } else { return fqmn_ == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance() : fqmn_; } } /** *
       * Match settings for gRPC service method called in the request.
       * A match string must be a fully qualified method name, e.g. `foo.bar.v1.BazService/Get`, or a prefix of such.
       * If not specified, the route matches all methods.
       * 
* * .yandex.cloud.apploadbalancer.v1.StringMatch fqmn = 1; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder> getFqmnFieldBuilder() { if (fqmnBuilder_ == null) { fqmnBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder>( getFqmn(), getParentForChildren(), isClean()); fqmn_ = null; } return fqmnBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.GrpcRouteMatch) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcRouteMatch) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public GrpcRouteMatch parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new GrpcRouteMatch(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteMatch getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface StringMatchOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.StringMatch) com.google.protobuf.MessageOrBuilder { /** *
     * Exact match string.
     * 
* * string exact_match = 1; * @return Whether the exactMatch field is set. */ boolean hasExactMatch(); /** *
     * Exact match string.
     * 
* * string exact_match = 1; * @return The exactMatch. */ java.lang.String getExactMatch(); /** *
     * Exact match string.
     * 
* * string exact_match = 1; * @return The bytes for exactMatch. */ com.google.protobuf.ByteString getExactMatchBytes(); /** *
     * Prefix match string.
     * 
* * string prefix_match = 2; * @return Whether the prefixMatch field is set. */ boolean hasPrefixMatch(); /** *
     * Prefix match string.
     * 
* * string prefix_match = 2; * @return The prefixMatch. */ java.lang.String getPrefixMatch(); /** *
     * Prefix match string.
     * 
* * string prefix_match = 2; * @return The bytes for prefixMatch. */ com.google.protobuf.ByteString getPrefixMatchBytes(); /** *
     * Regular expression match string.
     * 
* * string regex_match = 3; * @return Whether the regexMatch field is set. */ boolean hasRegexMatch(); /** *
     * Regular expression match string.
     * 
* * string regex_match = 3; * @return The regexMatch. */ java.lang.String getRegexMatch(); /** *
     * Regular expression match string.
     * 
* * string regex_match = 3; * @return The bytes for regexMatch. */ com.google.protobuf.ByteString getRegexMatchBytes(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.MatchCase getMatchCase(); } /** *
   * A string matcher resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.StringMatch} */ public static final class StringMatch extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.StringMatch) StringMatchOrBuilder { private static final long serialVersionUID = 0L; // Use StringMatch.newBuilder() to construct. private StringMatch(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private StringMatch() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new StringMatch(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private StringMatch( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); matchCase_ = 1; match_ = s; break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); matchCase_ = 2; match_ = s; break; } case 26: { java.lang.String s = input.readStringRequireUtf8(); matchCase_ = 3; match_ = s; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder.class); } private int matchCase_ = 0; private java.lang.Object match_; public enum MatchCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { EXACT_MATCH(1), PREFIX_MATCH(2), REGEX_MATCH(3), MATCH_NOT_SET(0); private final int value; private MatchCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static MatchCase valueOf(int value) { return forNumber(value); } public static MatchCase forNumber(int value) { switch (value) { case 1: return EXACT_MATCH; case 2: return PREFIX_MATCH; case 3: return REGEX_MATCH; case 0: return MATCH_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public MatchCase getMatchCase() { return MatchCase.forNumber( matchCase_); } public static final int EXACT_MATCH_FIELD_NUMBER = 1; /** *
     * Exact match string.
     * 
* * string exact_match = 1; * @return Whether the exactMatch field is set. */ public boolean hasExactMatch() { return matchCase_ == 1; } /** *
     * Exact match string.
     * 
* * string exact_match = 1; * @return The exactMatch. */ public java.lang.String getExactMatch() { java.lang.Object ref = ""; if (matchCase_ == 1) { ref = match_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (matchCase_ == 1) { match_ = s; } return s; } } /** *
     * Exact match string.
     * 
* * string exact_match = 1; * @return The bytes for exactMatch. */ public com.google.protobuf.ByteString getExactMatchBytes() { java.lang.Object ref = ""; if (matchCase_ == 1) { ref = match_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (matchCase_ == 1) { match_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int PREFIX_MATCH_FIELD_NUMBER = 2; /** *
     * Prefix match string.
     * 
* * string prefix_match = 2; * @return Whether the prefixMatch field is set. */ public boolean hasPrefixMatch() { return matchCase_ == 2; } /** *
     * Prefix match string.
     * 
* * string prefix_match = 2; * @return The prefixMatch. */ public java.lang.String getPrefixMatch() { java.lang.Object ref = ""; if (matchCase_ == 2) { ref = match_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (matchCase_ == 2) { match_ = s; } return s; } } /** *
     * Prefix match string.
     * 
* * string prefix_match = 2; * @return The bytes for prefixMatch. */ public com.google.protobuf.ByteString getPrefixMatchBytes() { java.lang.Object ref = ""; if (matchCase_ == 2) { ref = match_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (matchCase_ == 2) { match_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REGEX_MATCH_FIELD_NUMBER = 3; /** *
     * Regular expression match string.
     * 
* * string regex_match = 3; * @return Whether the regexMatch field is set. */ public boolean hasRegexMatch() { return matchCase_ == 3; } /** *
     * Regular expression match string.
     * 
* * string regex_match = 3; * @return The regexMatch. */ public java.lang.String getRegexMatch() { java.lang.Object ref = ""; if (matchCase_ == 3) { ref = match_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (matchCase_ == 3) { match_ = s; } return s; } } /** *
     * Regular expression match string.
     * 
* * string regex_match = 3; * @return The bytes for regexMatch. */ public com.google.protobuf.ByteString getRegexMatchBytes() { java.lang.Object ref = ""; if (matchCase_ == 3) { ref = match_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (matchCase_ == 3) { match_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (matchCase_ == 1) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, match_); } if (matchCase_ == 2) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, match_); } if (matchCase_ == 3) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, match_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (matchCase_ == 1) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, match_); } if (matchCase_ == 2) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, match_); } if (matchCase_ == 3) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, match_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch) obj; if (!getMatchCase().equals(other.getMatchCase())) return false; switch (matchCase_) { case 1: if (!getExactMatch() .equals(other.getExactMatch())) return false; break; case 2: if (!getPrefixMatch() .equals(other.getPrefixMatch())) return false; break; case 3: if (!getRegexMatch() .equals(other.getRegexMatch())) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); switch (matchCase_) { case 1: hash = (37 * hash) + EXACT_MATCH_FIELD_NUMBER; hash = (53 * hash) + getExactMatch().hashCode(); break; case 2: hash = (37 * hash) + PREFIX_MATCH_FIELD_NUMBER; hash = (53 * hash) + getPrefixMatch().hashCode(); break; case 3: hash = (37 * hash) + REGEX_MATCH_FIELD_NUMBER; hash = (53 * hash) + getRegexMatch().hashCode(); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A string matcher resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.StringMatch} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.StringMatch) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatchOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); matchCase_ = 0; match_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch(this); if (matchCase_ == 1) { result.match_ = match_; } if (matchCase_ == 2) { result.match_ = match_; } if (matchCase_ == 3) { result.match_ = match_; } result.matchCase_ = matchCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch.getDefaultInstance()) return this; switch (other.getMatchCase()) { case EXACT_MATCH: { matchCase_ = 1; match_ = other.match_; onChanged(); break; } case PREFIX_MATCH: { matchCase_ = 2; match_ = other.match_; onChanged(); break; } case REGEX_MATCH: { matchCase_ = 3; match_ = other.match_; onChanged(); break; } case MATCH_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int matchCase_ = 0; private java.lang.Object match_; public MatchCase getMatchCase() { return MatchCase.forNumber( matchCase_); } public Builder clearMatch() { matchCase_ = 0; match_ = null; onChanged(); return this; } /** *
       * Exact match string.
       * 
* * string exact_match = 1; * @return Whether the exactMatch field is set. */ @java.lang.Override public boolean hasExactMatch() { return matchCase_ == 1; } /** *
       * Exact match string.
       * 
* * string exact_match = 1; * @return The exactMatch. */ @java.lang.Override public java.lang.String getExactMatch() { java.lang.Object ref = ""; if (matchCase_ == 1) { ref = match_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (matchCase_ == 1) { match_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Exact match string.
       * 
* * string exact_match = 1; * @return The bytes for exactMatch. */ @java.lang.Override public com.google.protobuf.ByteString getExactMatchBytes() { java.lang.Object ref = ""; if (matchCase_ == 1) { ref = match_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (matchCase_ == 1) { match_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Exact match string.
       * 
* * string exact_match = 1; * @param value The exactMatch to set. * @return This builder for chaining. */ public Builder setExactMatch( java.lang.String value) { if (value == null) { throw new NullPointerException(); } matchCase_ = 1; match_ = value; onChanged(); return this; } /** *
       * Exact match string.
       * 
* * string exact_match = 1; * @return This builder for chaining. */ public Builder clearExactMatch() { if (matchCase_ == 1) { matchCase_ = 0; match_ = null; onChanged(); } return this; } /** *
       * Exact match string.
       * 
* * string exact_match = 1; * @param value The bytes for exactMatch to set. * @return This builder for chaining. */ public Builder setExactMatchBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); matchCase_ = 1; match_ = value; onChanged(); return this; } /** *
       * Prefix match string.
       * 
* * string prefix_match = 2; * @return Whether the prefixMatch field is set. */ @java.lang.Override public boolean hasPrefixMatch() { return matchCase_ == 2; } /** *
       * Prefix match string.
       * 
* * string prefix_match = 2; * @return The prefixMatch. */ @java.lang.Override public java.lang.String getPrefixMatch() { java.lang.Object ref = ""; if (matchCase_ == 2) { ref = match_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (matchCase_ == 2) { match_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Prefix match string.
       * 
* * string prefix_match = 2; * @return The bytes for prefixMatch. */ @java.lang.Override public com.google.protobuf.ByteString getPrefixMatchBytes() { java.lang.Object ref = ""; if (matchCase_ == 2) { ref = match_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (matchCase_ == 2) { match_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Prefix match string.
       * 
* * string prefix_match = 2; * @param value The prefixMatch to set. * @return This builder for chaining. */ public Builder setPrefixMatch( java.lang.String value) { if (value == null) { throw new NullPointerException(); } matchCase_ = 2; match_ = value; onChanged(); return this; } /** *
       * Prefix match string.
       * 
* * string prefix_match = 2; * @return This builder for chaining. */ public Builder clearPrefixMatch() { if (matchCase_ == 2) { matchCase_ = 0; match_ = null; onChanged(); } return this; } /** *
       * Prefix match string.
       * 
* * string prefix_match = 2; * @param value The bytes for prefixMatch to set. * @return This builder for chaining. */ public Builder setPrefixMatchBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); matchCase_ = 2; match_ = value; onChanged(); return this; } /** *
       * Regular expression match string.
       * 
* * string regex_match = 3; * @return Whether the regexMatch field is set. */ @java.lang.Override public boolean hasRegexMatch() { return matchCase_ == 3; } /** *
       * Regular expression match string.
       * 
* * string regex_match = 3; * @return The regexMatch. */ @java.lang.Override public java.lang.String getRegexMatch() { java.lang.Object ref = ""; if (matchCase_ == 3) { ref = match_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (matchCase_ == 3) { match_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Regular expression match string.
       * 
* * string regex_match = 3; * @return The bytes for regexMatch. */ @java.lang.Override public com.google.protobuf.ByteString getRegexMatchBytes() { java.lang.Object ref = ""; if (matchCase_ == 3) { ref = match_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (matchCase_ == 3) { match_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Regular expression match string.
       * 
* * string regex_match = 3; * @param value The regexMatch to set. * @return This builder for chaining. */ public Builder setRegexMatch( java.lang.String value) { if (value == null) { throw new NullPointerException(); } matchCase_ = 3; match_ = value; onChanged(); return this; } /** *
       * Regular expression match string.
       * 
* * string regex_match = 3; * @return This builder for chaining. */ public Builder clearRegexMatch() { if (matchCase_ == 3) { matchCase_ = 0; match_ = null; onChanged(); } return this; } /** *
       * Regular expression match string.
       * 
* * string regex_match = 3; * @param value The bytes for regexMatch to set. * @return This builder for chaining. */ public Builder setRegexMatchBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); matchCase_ = 3; match_ = value; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.StringMatch) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.StringMatch) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public StringMatch parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new StringMatch(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.StringMatch getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface RedirectActionOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.RedirectAction) com.google.protobuf.MessageOrBuilder { /** *
     * URI scheme replacement.
     * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
     * the port is also removed.
     * If not specified, the original scheme and port are used.
     * 
* * string replace_scheme = 1; * @return The replaceScheme. */ java.lang.String getReplaceScheme(); /** *
     * URI scheme replacement.
     * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
     * the port is also removed.
     * If not specified, the original scheme and port are used.
     * 
* * string replace_scheme = 1; * @return The bytes for replaceScheme. */ com.google.protobuf.ByteString getReplaceSchemeBytes(); /** *
     * URI host replacement.
     * If not specified, the original host is used.
     * 
* * string replace_host = 2; * @return The replaceHost. */ java.lang.String getReplaceHost(); /** *
     * URI host replacement.
     * If not specified, the original host is used.
     * 
* * string replace_host = 2; * @return The bytes for replaceHost. */ com.google.protobuf.ByteString getReplaceHostBytes(); /** *
     * URI host replacement.
     * If not specified, the original host is used.
     * 
* * int64 replace_port = 3; * @return The replacePort. */ long getReplacePort(); /** *
     * Replacement for the whole path.
     * 
* * string replace_path = 4; * @return Whether the replacePath field is set. */ boolean hasReplacePath(); /** *
     * Replacement for the whole path.
     * 
* * string replace_path = 4; * @return The replacePath. */ java.lang.String getReplacePath(); /** *
     * Replacement for the whole path.
     * 
* * string replace_path = 4; * @return The bytes for replacePath. */ com.google.protobuf.ByteString getReplacePathBytes(); /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
     * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
     * For [StringMatch.exact_match], the whole path is replaced.
     * 
* * string replace_prefix = 5; * @return Whether the replacePrefix field is set. */ boolean hasReplacePrefix(); /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
     * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
     * For [StringMatch.exact_match], the whole path is replaced.
     * 
* * string replace_prefix = 5; * @return The replacePrefix. */ java.lang.String getReplacePrefix(); /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
     * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
     * For [StringMatch.exact_match], the whole path is replaced.
     * 
* * string replace_prefix = 5; * @return The bytes for replacePrefix. */ com.google.protobuf.ByteString getReplacePrefixBytes(); /** *
     * Removes URI query.
     * 
* * bool remove_query = 6; * @return The removeQuery. */ boolean getRemoveQuery(); /** *
     * HTTP status code to use in redirect responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return The enum numeric value on the wire for responseCode. */ int getResponseCodeValue(); /** *
     * HTTP status code to use in redirect responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return The responseCode. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode getResponseCode(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.PathCase getPathCase(); } /** *
   * A redirect action resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.RedirectAction} */ public static final class RedirectAction extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.RedirectAction) RedirectActionOrBuilder { private static final long serialVersionUID = 0L; // Use RedirectAction.newBuilder() to construct. private RedirectAction(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private RedirectAction() { replaceScheme_ = ""; replaceHost_ = ""; responseCode_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new RedirectAction(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private RedirectAction( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); replaceScheme_ = s; break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); replaceHost_ = s; break; } case 24: { replacePort_ = input.readInt64(); break; } case 34: { java.lang.String s = input.readStringRequireUtf8(); pathCase_ = 4; path_ = s; break; } case 42: { java.lang.String s = input.readStringRequireUtf8(); pathCase_ = 5; path_ = s; break; } case 48: { removeQuery_ = input.readBool(); break; } case 56: { int rawValue = input.readEnum(); responseCode_ = rawValue; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder.class); } /** *
     * HTTP status codes supported for use in redirect responses.
     * 
* * Protobuf enum {@code yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode} */ public enum RedirectResponseCode implements com.google.protobuf.ProtocolMessageEnum { /** *
       * `301 Moved Permanently` status code.
       * 
* * MOVED_PERMANENTLY = 0; */ MOVED_PERMANENTLY(0), /** *
       * `302 Found` status code.
       * 
* * FOUND = 1; */ FOUND(1), /** *
       * `303 See Other` status code.
       * 
* * SEE_OTHER = 2; */ SEE_OTHER(2), /** *
       * `307 Temporary Redirect` status code.
       * 
* * TEMPORARY_REDIRECT = 3; */ TEMPORARY_REDIRECT(3), /** *
       * `308 Permanent Redirect` status code.
       * 
* * PERMANENT_REDIRECT = 4; */ PERMANENT_REDIRECT(4), UNRECOGNIZED(-1), ; /** *
       * `301 Moved Permanently` status code.
       * 
* * MOVED_PERMANENTLY = 0; */ public static final int MOVED_PERMANENTLY_VALUE = 0; /** *
       * `302 Found` status code.
       * 
* * FOUND = 1; */ public static final int FOUND_VALUE = 1; /** *
       * `303 See Other` status code.
       * 
* * SEE_OTHER = 2; */ public static final int SEE_OTHER_VALUE = 2; /** *
       * `307 Temporary Redirect` status code.
       * 
* * TEMPORARY_REDIRECT = 3; */ public static final int TEMPORARY_REDIRECT_VALUE = 3; /** *
       * `308 Permanent Redirect` status code.
       * 
* * PERMANENT_REDIRECT = 4; */ public static final int PERMANENT_REDIRECT_VALUE = 4; public final int getNumber() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalArgumentException( "Can't get the number of an unknown enum value."); } return value; } /** * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static RedirectResponseCode valueOf(int value) { return forNumber(value); } /** * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. */ public static RedirectResponseCode forNumber(int value) { switch (value) { case 0: return MOVED_PERMANENTLY; case 1: return FOUND; case 2: return SEE_OTHER; case 3: return TEMPORARY_REDIRECT; case 4: return PERMANENT_REDIRECT; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { return internalValueMap; } private static final com.google.protobuf.Internal.EnumLiteMap< RedirectResponseCode> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap() { public RedirectResponseCode findValueByNumber(int number) { return RedirectResponseCode.forNumber(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalStateException( "Can't get the descriptor of an unrecognized enum value."); } return getDescriptor().getValues().get(ordinal()); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDescriptor().getEnumTypes().get(0); } private static final RedirectResponseCode[] VALUES = values(); public static RedirectResponseCode valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } if (desc.getIndex() == -1) { return UNRECOGNIZED; } return VALUES[desc.getIndex()]; } private final int value; private RedirectResponseCode(int value) { this.value = value; } // @@protoc_insertion_point(enum_scope:yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode) } private int pathCase_ = 0; private java.lang.Object path_; public enum PathCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { REPLACE_PATH(4), REPLACE_PREFIX(5), PATH_NOT_SET(0); private final int value; private PathCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static PathCase valueOf(int value) { return forNumber(value); } public static PathCase forNumber(int value) { switch (value) { case 4: return REPLACE_PATH; case 5: return REPLACE_PREFIX; case 0: return PATH_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public PathCase getPathCase() { return PathCase.forNumber( pathCase_); } public static final int REPLACE_SCHEME_FIELD_NUMBER = 1; private volatile java.lang.Object replaceScheme_; /** *
     * URI scheme replacement.
     * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
     * the port is also removed.
     * If not specified, the original scheme and port are used.
     * 
* * string replace_scheme = 1; * @return The replaceScheme. */ @java.lang.Override public java.lang.String getReplaceScheme() { java.lang.Object ref = replaceScheme_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); replaceScheme_ = s; return s; } } /** *
     * URI scheme replacement.
     * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
     * the port is also removed.
     * If not specified, the original scheme and port are used.
     * 
* * string replace_scheme = 1; * @return The bytes for replaceScheme. */ @java.lang.Override public com.google.protobuf.ByteString getReplaceSchemeBytes() { java.lang.Object ref = replaceScheme_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); replaceScheme_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REPLACE_HOST_FIELD_NUMBER = 2; private volatile java.lang.Object replaceHost_; /** *
     * URI host replacement.
     * If not specified, the original host is used.
     * 
* * string replace_host = 2; * @return The replaceHost. */ @java.lang.Override public java.lang.String getReplaceHost() { java.lang.Object ref = replaceHost_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); replaceHost_ = s; return s; } } /** *
     * URI host replacement.
     * If not specified, the original host is used.
     * 
* * string replace_host = 2; * @return The bytes for replaceHost. */ @java.lang.Override public com.google.protobuf.ByteString getReplaceHostBytes() { java.lang.Object ref = replaceHost_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); replaceHost_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REPLACE_PORT_FIELD_NUMBER = 3; private long replacePort_; /** *
     * URI host replacement.
     * If not specified, the original host is used.
     * 
* * int64 replace_port = 3; * @return The replacePort. */ @java.lang.Override public long getReplacePort() { return replacePort_; } public static final int REPLACE_PATH_FIELD_NUMBER = 4; /** *
     * Replacement for the whole path.
     * 
* * string replace_path = 4; * @return Whether the replacePath field is set. */ public boolean hasReplacePath() { return pathCase_ == 4; } /** *
     * Replacement for the whole path.
     * 
* * string replace_path = 4; * @return The replacePath. */ public java.lang.String getReplacePath() { java.lang.Object ref = ""; if (pathCase_ == 4) { ref = path_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (pathCase_ == 4) { path_ = s; } return s; } } /** *
     * Replacement for the whole path.
     * 
* * string replace_path = 4; * @return The bytes for replacePath. */ public com.google.protobuf.ByteString getReplacePathBytes() { java.lang.Object ref = ""; if (pathCase_ == 4) { ref = path_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (pathCase_ == 4) { path_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REPLACE_PREFIX_FIELD_NUMBER = 5; /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
     * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
     * For [StringMatch.exact_match], the whole path is replaced.
     * 
* * string replace_prefix = 5; * @return Whether the replacePrefix field is set. */ public boolean hasReplacePrefix() { return pathCase_ == 5; } /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
     * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
     * For [StringMatch.exact_match], the whole path is replaced.
     * 
* * string replace_prefix = 5; * @return The replacePrefix. */ public java.lang.String getReplacePrefix() { java.lang.Object ref = ""; if (pathCase_ == 5) { ref = path_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (pathCase_ == 5) { path_ = s; } return s; } } /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
     * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
     * For [StringMatch.exact_match], the whole path is replaced.
     * 
* * string replace_prefix = 5; * @return The bytes for replacePrefix. */ public com.google.protobuf.ByteString getReplacePrefixBytes() { java.lang.Object ref = ""; if (pathCase_ == 5) { ref = path_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (pathCase_ == 5) { path_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int REMOVE_QUERY_FIELD_NUMBER = 6; private boolean removeQuery_; /** *
     * Removes URI query.
     * 
* * bool remove_query = 6; * @return The removeQuery. */ @java.lang.Override public boolean getRemoveQuery() { return removeQuery_; } public static final int RESPONSE_CODE_FIELD_NUMBER = 7; private int responseCode_; /** *
     * HTTP status code to use in redirect responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return The enum numeric value on the wire for responseCode. */ @java.lang.Override public int getResponseCodeValue() { return responseCode_; } /** *
     * HTTP status code to use in redirect responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return The responseCode. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode getResponseCode() { @SuppressWarnings("deprecation") yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode result = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode.valueOf(responseCode_); return result == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode.UNRECOGNIZED : result; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(replaceScheme_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, replaceScheme_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(replaceHost_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, replaceHost_); } if (replacePort_ != 0L) { output.writeInt64(3, replacePort_); } if (pathCase_ == 4) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, path_); } if (pathCase_ == 5) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, path_); } if (removeQuery_ != false) { output.writeBool(6, removeQuery_); } if (responseCode_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode.MOVED_PERMANENTLY.getNumber()) { output.writeEnum(7, responseCode_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(replaceScheme_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, replaceScheme_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(replaceHost_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, replaceHost_); } if (replacePort_ != 0L) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(3, replacePort_); } if (pathCase_ == 4) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, path_); } if (pathCase_ == 5) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, path_); } if (removeQuery_ != false) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(6, removeQuery_); } if (responseCode_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode.MOVED_PERMANENTLY.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(7, responseCode_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) obj; if (!getReplaceScheme() .equals(other.getReplaceScheme())) return false; if (!getReplaceHost() .equals(other.getReplaceHost())) return false; if (getReplacePort() != other.getReplacePort()) return false; if (getRemoveQuery() != other.getRemoveQuery()) return false; if (responseCode_ != other.responseCode_) return false; if (!getPathCase().equals(other.getPathCase())) return false; switch (pathCase_) { case 4: if (!getReplacePath() .equals(other.getReplacePath())) return false; break; case 5: if (!getReplacePrefix() .equals(other.getReplacePrefix())) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + REPLACE_SCHEME_FIELD_NUMBER; hash = (53 * hash) + getReplaceScheme().hashCode(); hash = (37 * hash) + REPLACE_HOST_FIELD_NUMBER; hash = (53 * hash) + getReplaceHost().hashCode(); hash = (37 * hash) + REPLACE_PORT_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getReplacePort()); hash = (37 * hash) + REMOVE_QUERY_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getRemoveQuery()); hash = (37 * hash) + RESPONSE_CODE_FIELD_NUMBER; hash = (53 * hash) + responseCode_; switch (pathCase_) { case 4: hash = (37 * hash) + REPLACE_PATH_FIELD_NUMBER; hash = (53 * hash) + getReplacePath().hashCode(); break; case 5: hash = (37 * hash) + REPLACE_PREFIX_FIELD_NUMBER; hash = (53 * hash) + getReplacePrefix().hashCode(); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A redirect action resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.RedirectAction} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.RedirectAction) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectActionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); replaceScheme_ = ""; replaceHost_ = ""; replacePort_ = 0L; removeQuery_ = false; responseCode_ = 0; pathCase_ = 0; path_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction(this); result.replaceScheme_ = replaceScheme_; result.replaceHost_ = replaceHost_; result.replacePort_ = replacePort_; if (pathCase_ == 4) { result.path_ = path_; } if (pathCase_ == 5) { result.path_ = path_; } result.removeQuery_ = removeQuery_; result.responseCode_ = responseCode_; result.pathCase_ = pathCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.getDefaultInstance()) return this; if (!other.getReplaceScheme().isEmpty()) { replaceScheme_ = other.replaceScheme_; onChanged(); } if (!other.getReplaceHost().isEmpty()) { replaceHost_ = other.replaceHost_; onChanged(); } if (other.getReplacePort() != 0L) { setReplacePort(other.getReplacePort()); } if (other.getRemoveQuery() != false) { setRemoveQuery(other.getRemoveQuery()); } if (other.responseCode_ != 0) { setResponseCodeValue(other.getResponseCodeValue()); } switch (other.getPathCase()) { case REPLACE_PATH: { pathCase_ = 4; path_ = other.path_; onChanged(); break; } case REPLACE_PREFIX: { pathCase_ = 5; path_ = other.path_; onChanged(); break; } case PATH_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int pathCase_ = 0; private java.lang.Object path_; public PathCase getPathCase() { return PathCase.forNumber( pathCase_); } public Builder clearPath() { pathCase_ = 0; path_ = null; onChanged(); return this; } private java.lang.Object replaceScheme_ = ""; /** *
       * URI scheme replacement.
       * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
       * the port is also removed.
       * If not specified, the original scheme and port are used.
       * 
* * string replace_scheme = 1; * @return The replaceScheme. */ public java.lang.String getReplaceScheme() { java.lang.Object ref = replaceScheme_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); replaceScheme_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * URI scheme replacement.
       * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
       * the port is also removed.
       * If not specified, the original scheme and port are used.
       * 
* * string replace_scheme = 1; * @return The bytes for replaceScheme. */ public com.google.protobuf.ByteString getReplaceSchemeBytes() { java.lang.Object ref = replaceScheme_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); replaceScheme_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * URI scheme replacement.
       * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
       * the port is also removed.
       * If not specified, the original scheme and port are used.
       * 
* * string replace_scheme = 1; * @param value The replaceScheme to set. * @return This builder for chaining. */ public Builder setReplaceScheme( java.lang.String value) { if (value == null) { throw new NullPointerException(); } replaceScheme_ = value; onChanged(); return this; } /** *
       * URI scheme replacement.
       * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
       * the port is also removed.
       * If not specified, the original scheme and port are used.
       * 
* * string replace_scheme = 1; * @return This builder for chaining. */ public Builder clearReplaceScheme() { replaceScheme_ = getDefaultInstance().getReplaceScheme(); onChanged(); return this; } /** *
       * URI scheme replacement.
       * If `http` or `https` scheme is to be replaced and `80` or `443` port is specified in the original URI,
       * the port is also removed.
       * If not specified, the original scheme and port are used.
       * 
* * string replace_scheme = 1; * @param value The bytes for replaceScheme to set. * @return This builder for chaining. */ public Builder setReplaceSchemeBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); replaceScheme_ = value; onChanged(); return this; } private java.lang.Object replaceHost_ = ""; /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * string replace_host = 2; * @return The replaceHost. */ public java.lang.String getReplaceHost() { java.lang.Object ref = replaceHost_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); replaceHost_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * string replace_host = 2; * @return The bytes for replaceHost. */ public com.google.protobuf.ByteString getReplaceHostBytes() { java.lang.Object ref = replaceHost_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); replaceHost_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * string replace_host = 2; * @param value The replaceHost to set. * @return This builder for chaining. */ public Builder setReplaceHost( java.lang.String value) { if (value == null) { throw new NullPointerException(); } replaceHost_ = value; onChanged(); return this; } /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * string replace_host = 2; * @return This builder for chaining. */ public Builder clearReplaceHost() { replaceHost_ = getDefaultInstance().getReplaceHost(); onChanged(); return this; } /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * string replace_host = 2; * @param value The bytes for replaceHost to set. * @return This builder for chaining. */ public Builder setReplaceHostBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); replaceHost_ = value; onChanged(); return this; } private long replacePort_ ; /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * int64 replace_port = 3; * @return The replacePort. */ @java.lang.Override public long getReplacePort() { return replacePort_; } /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * int64 replace_port = 3; * @param value The replacePort to set. * @return This builder for chaining. */ public Builder setReplacePort(long value) { replacePort_ = value; onChanged(); return this; } /** *
       * URI host replacement.
       * If not specified, the original host is used.
       * 
* * int64 replace_port = 3; * @return This builder for chaining. */ public Builder clearReplacePort() { replacePort_ = 0L; onChanged(); return this; } /** *
       * Replacement for the whole path.
       * 
* * string replace_path = 4; * @return Whether the replacePath field is set. */ @java.lang.Override public boolean hasReplacePath() { return pathCase_ == 4; } /** *
       * Replacement for the whole path.
       * 
* * string replace_path = 4; * @return The replacePath. */ @java.lang.Override public java.lang.String getReplacePath() { java.lang.Object ref = ""; if (pathCase_ == 4) { ref = path_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (pathCase_ == 4) { path_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Replacement for the whole path.
       * 
* * string replace_path = 4; * @return The bytes for replacePath. */ @java.lang.Override public com.google.protobuf.ByteString getReplacePathBytes() { java.lang.Object ref = ""; if (pathCase_ == 4) { ref = path_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (pathCase_ == 4) { path_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Replacement for the whole path.
       * 
* * string replace_path = 4; * @param value The replacePath to set. * @return This builder for chaining. */ public Builder setReplacePath( java.lang.String value) { if (value == null) { throw new NullPointerException(); } pathCase_ = 4; path_ = value; onChanged(); return this; } /** *
       * Replacement for the whole path.
       * 
* * string replace_path = 4; * @return This builder for chaining. */ public Builder clearReplacePath() { if (pathCase_ == 4) { pathCase_ = 0; path_ = null; onChanged(); } return this; } /** *
       * Replacement for the whole path.
       * 
* * string replace_path = 4; * @param value The bytes for replacePath to set. * @return This builder for chaining. */ public Builder setReplacePathBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); pathCase_ = 4; path_ = value; onChanged(); return this; } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
       * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
       * For [StringMatch.exact_match], the whole path is replaced.
       * 
* * string replace_prefix = 5; * @return Whether the replacePrefix field is set. */ @java.lang.Override public boolean hasReplacePrefix() { return pathCase_ == 5; } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
       * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
       * For [StringMatch.exact_match], the whole path is replaced.
       * 
* * string replace_prefix = 5; * @return The replacePrefix. */ @java.lang.Override public java.lang.String getReplacePrefix() { java.lang.Object ref = ""; if (pathCase_ == 5) { ref = path_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (pathCase_ == 5) { path_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
       * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
       * For [StringMatch.exact_match], the whole path is replaced.
       * 
* * string replace_prefix = 5; * @return The bytes for replacePrefix. */ @java.lang.Override public com.google.protobuf.ByteString getReplacePrefixBytes() { java.lang.Object ref = ""; if (pathCase_ == 5) { ref = path_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (pathCase_ == 5) { path_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
       * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
       * For [StringMatch.exact_match], the whole path is replaced.
       * 
* * string replace_prefix = 5; * @param value The replacePrefix to set. * @return This builder for chaining. */ public Builder setReplacePrefix( java.lang.String value) { if (value == null) { throw new NullPointerException(); } pathCase_ = 5; path_ = value; onChanged(); return this; } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
       * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
       * For [StringMatch.exact_match], the whole path is replaced.
       * 
* * string replace_prefix = 5; * @return This builder for chaining. */ public Builder clearReplacePrefix() { if (pathCase_ == 5) { pathCase_ = 0; path_ = null; onChanged(); } return this; } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `replace_prefix` value is `/bar`,
       * a request with `https://example.com/foobaz` URI is redirected to `https://example.com/barbaz`.
       * For [StringMatch.exact_match], the whole path is replaced.
       * 
* * string replace_prefix = 5; * @param value The bytes for replacePrefix to set. * @return This builder for chaining. */ public Builder setReplacePrefixBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); pathCase_ = 5; path_ = value; onChanged(); return this; } private boolean removeQuery_ ; /** *
       * Removes URI query.
       * 
* * bool remove_query = 6; * @return The removeQuery. */ @java.lang.Override public boolean getRemoveQuery() { return removeQuery_; } /** *
       * Removes URI query.
       * 
* * bool remove_query = 6; * @param value The removeQuery to set. * @return This builder for chaining. */ public Builder setRemoveQuery(boolean value) { removeQuery_ = value; onChanged(); return this; } /** *
       * Removes URI query.
       * 
* * bool remove_query = 6; * @return This builder for chaining. */ public Builder clearRemoveQuery() { removeQuery_ = false; onChanged(); return this; } private int responseCode_ = 0; /** *
       * HTTP status code to use in redirect responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return The enum numeric value on the wire for responseCode. */ @java.lang.Override public int getResponseCodeValue() { return responseCode_; } /** *
       * HTTP status code to use in redirect responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @param value The enum numeric value on the wire for responseCode to set. * @return This builder for chaining. */ public Builder setResponseCodeValue(int value) { responseCode_ = value; onChanged(); return this; } /** *
       * HTTP status code to use in redirect responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return The responseCode. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode getResponseCode() { @SuppressWarnings("deprecation") yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode result = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode.valueOf(responseCode_); return result == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode.UNRECOGNIZED : result; } /** *
       * HTTP status code to use in redirect responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @param value The responseCode to set. * @return This builder for chaining. */ public Builder setResponseCode(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction.RedirectResponseCode value) { if (value == null) { throw new NullPointerException(); } responseCode_ = value.getNumber(); onChanged(); return this; } /** *
       * HTTP status code to use in redirect responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.RedirectAction.RedirectResponseCode response_code = 7; * @return This builder for chaining. */ public Builder clearResponseCode() { responseCode_ = 0; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.RedirectAction) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.RedirectAction) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public RedirectAction parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new RedirectAction(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.RedirectAction getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface DirectResponseActionOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.DirectResponseAction) com.google.protobuf.MessageOrBuilder { /** *
     * HTTP status code to use in responses.
     * 
* * int64 status = 1 [(.yandex.cloud.value) = "100-599"]; * @return The status. */ long getStatus(); /** *
     * Response body.
     * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; * @return Whether the body field is set. */ boolean hasBody(); /** *
     * Response body.
     * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; * @return The body. */ yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload getBody(); /** *
     * Response body.
     * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.PayloadOrBuilder getBodyOrBuilder(); } /** *
   * A direct response action resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.DirectResponseAction} */ public static final class DirectResponseAction extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.DirectResponseAction) DirectResponseActionOrBuilder { private static final long serialVersionUID = 0L; // Use DirectResponseAction.newBuilder() to construct. private DirectResponseAction(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private DirectResponseAction() { } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new DirectResponseAction(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private DirectResponseAction( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 8: { status_ = input.readInt64(); break; } case 18: { yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.Builder subBuilder = null; if (body_ != null) { subBuilder = body_.toBuilder(); } body_ = input.readMessage(yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(body_); body_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder.class); } public static final int STATUS_FIELD_NUMBER = 1; private long status_; /** *
     * HTTP status code to use in responses.
     * 
* * int64 status = 1 [(.yandex.cloud.value) = "100-599"]; * @return The status. */ @java.lang.Override public long getStatus() { return status_; } public static final int BODY_FIELD_NUMBER = 2; private yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload body_; /** *
     * Response body.
     * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; * @return Whether the body field is set. */ @java.lang.Override public boolean hasBody() { return body_ != null; } /** *
     * Response body.
     * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; * @return The body. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload getBody() { return body_ == null ? yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.getDefaultInstance() : body_; } /** *
     * Response body.
     * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.PayloadOrBuilder getBodyOrBuilder() { return getBody(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (status_ != 0L) { output.writeInt64(1, status_); } if (body_ != null) { output.writeMessage(2, getBody()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (status_ != 0L) { size += com.google.protobuf.CodedOutputStream .computeInt64Size(1, status_); } if (body_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getBody()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) obj; if (getStatus() != other.getStatus()) return false; if (hasBody() != other.hasBody()) return false; if (hasBody()) { if (!getBody() .equals(other.getBody())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + STATUS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getStatus()); if (hasBody()) { hash = (37 * hash) + BODY_FIELD_NUMBER; hash = (53 * hash) + getBody().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A direct response action resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.DirectResponseAction} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.DirectResponseAction) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseActionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); status_ = 0L; if (bodyBuilder_ == null) { body_ = null; } else { body_ = null; bodyBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction(this); result.status_ = status_; if (bodyBuilder_ == null) { result.body_ = body_; } else { result.body_ = bodyBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction.getDefaultInstance()) return this; if (other.getStatus() != 0L) { setStatus(other.getStatus()); } if (other.hasBody()) { mergeBody(other.getBody()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private long status_ ; /** *
       * HTTP status code to use in responses.
       * 
* * int64 status = 1 [(.yandex.cloud.value) = "100-599"]; * @return The status. */ @java.lang.Override public long getStatus() { return status_; } /** *
       * HTTP status code to use in responses.
       * 
* * int64 status = 1 [(.yandex.cloud.value) = "100-599"]; * @param value The status to set. * @return This builder for chaining. */ public Builder setStatus(long value) { status_ = value; onChanged(); return this; } /** *
       * HTTP status code to use in responses.
       * 
* * int64 status = 1 [(.yandex.cloud.value) = "100-599"]; * @return This builder for chaining. */ public Builder clearStatus() { status_ = 0L; onChanged(); return this; } private yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload body_; private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload, yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.Builder, yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.PayloadOrBuilder> bodyBuilder_; /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; * @return Whether the body field is set. */ public boolean hasBody() { return bodyBuilder_ != null || body_ != null; } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; * @return The body. */ public yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload getBody() { if (bodyBuilder_ == null) { return body_ == null ? yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.getDefaultInstance() : body_; } else { return bodyBuilder_.getMessage(); } } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ public Builder setBody(yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload value) { if (bodyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } body_ = value; onChanged(); } else { bodyBuilder_.setMessage(value); } return this; } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ public Builder setBody( yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.Builder builderForValue) { if (bodyBuilder_ == null) { body_ = builderForValue.build(); onChanged(); } else { bodyBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ public Builder mergeBody(yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload value) { if (bodyBuilder_ == null) { if (body_ != null) { body_ = yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.newBuilder(body_).mergeFrom(value).buildPartial(); } else { body_ = value; } onChanged(); } else { bodyBuilder_.mergeFrom(value); } return this; } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ public Builder clearBody() { if (bodyBuilder_ == null) { body_ = null; onChanged(); } else { body_ = null; bodyBuilder_ = null; } return this; } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ public yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.Builder getBodyBuilder() { onChanged(); return getBodyFieldBuilder().getBuilder(); } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ public yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.PayloadOrBuilder getBodyOrBuilder() { if (bodyBuilder_ != null) { return bodyBuilder_.getMessageOrBuilder(); } else { return body_ == null ? yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.getDefaultInstance() : body_; } } /** *
       * Response body.
       * 
* * .yandex.cloud.apploadbalancer.v1.Payload body = 2; */ private com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload, yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.Builder, yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.PayloadOrBuilder> getBodyFieldBuilder() { if (bodyBuilder_ == null) { bodyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload, yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.Payload.Builder, yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.PayloadOrBuilder>( getBody(), getParentForChildren(), isClean()); body_ = null; } return bodyBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.DirectResponseAction) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.DirectResponseAction) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public DirectResponseAction parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new DirectResponseAction(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.DirectResponseAction getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface GrpcStatusResponseActionOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction) com.google.protobuf.MessageOrBuilder { /** *
     * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return The enum numeric value on the wire for status. */ int getStatusValue(); /** *
     * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return The status. */ yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status getStatus(); } /** *
   * A gRPC status response action resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction} */ public static final class GrpcStatusResponseAction extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction) GrpcStatusResponseActionOrBuilder { private static final long serialVersionUID = 0L; // Use GrpcStatusResponseAction.newBuilder() to construct. private GrpcStatusResponseAction(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private GrpcStatusResponseAction() { status_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new GrpcStatusResponseAction(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private GrpcStatusResponseAction( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 8: { int rawValue = input.readEnum(); status_ = rawValue; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder.class); } /** *
     * gRPC status code supported for use in responses.
     * 
* * Protobuf enum {@code yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status} */ public enum Status implements com.google.protobuf.ProtocolMessageEnum { /** *
       * `OK` (0) status code.
       * 
* * OK = 0; */ OK(0), /** *
       * `INVALID_ARGUMENT` (3) status code.
       * 
* * INVALID_ARGUMENT = 1; */ INVALID_ARGUMENT(1), /** *
       * `NOT_FOUND` (5) status code.
       * 
* * NOT_FOUND = 2; */ NOT_FOUND(2), /** *
       * `PERMISSION_DENIED` (7) status code.
       * 
* * PERMISSION_DENIED = 3; */ PERMISSION_DENIED(3), /** *
       * `UNAUTHENTICATED` (16) status code.
       * 
* * UNAUTHENTICATED = 4; */ UNAUTHENTICATED(4), /** *
       * `UNIMPLEMENTED` (12) status code.
       * 
* * UNIMPLEMENTED = 5; */ UNIMPLEMENTED(5), /** *
       * `INTERNAL` (13) status code.
       * 
* * INTERNAL = 6; */ INTERNAL(6), /** *
       * `UNAVAILABLE` (14) status code.
       * 
* * UNAVAILABLE = 7; */ UNAVAILABLE(7), UNRECOGNIZED(-1), ; /** *
       * `OK` (0) status code.
       * 
* * OK = 0; */ public static final int OK_VALUE = 0; /** *
       * `INVALID_ARGUMENT` (3) status code.
       * 
* * INVALID_ARGUMENT = 1; */ public static final int INVALID_ARGUMENT_VALUE = 1; /** *
       * `NOT_FOUND` (5) status code.
       * 
* * NOT_FOUND = 2; */ public static final int NOT_FOUND_VALUE = 2; /** *
       * `PERMISSION_DENIED` (7) status code.
       * 
* * PERMISSION_DENIED = 3; */ public static final int PERMISSION_DENIED_VALUE = 3; /** *
       * `UNAUTHENTICATED` (16) status code.
       * 
* * UNAUTHENTICATED = 4; */ public static final int UNAUTHENTICATED_VALUE = 4; /** *
       * `UNIMPLEMENTED` (12) status code.
       * 
* * UNIMPLEMENTED = 5; */ public static final int UNIMPLEMENTED_VALUE = 5; /** *
       * `INTERNAL` (13) status code.
       * 
* * INTERNAL = 6; */ public static final int INTERNAL_VALUE = 6; /** *
       * `UNAVAILABLE` (14) status code.
       * 
* * UNAVAILABLE = 7; */ public static final int UNAVAILABLE_VALUE = 7; public final int getNumber() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalArgumentException( "Can't get the number of an unknown enum value."); } return value; } /** * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static Status valueOf(int value) { return forNumber(value); } /** * @param value The numeric wire value of the corresponding enum entry. * @return The enum associated with the given numeric wire value. */ public static Status forNumber(int value) { switch (value) { case 0: return OK; case 1: return INVALID_ARGUMENT; case 2: return NOT_FOUND; case 3: return PERMISSION_DENIED; case 4: return UNAUTHENTICATED; case 5: return UNIMPLEMENTED; case 6: return INTERNAL; case 7: return UNAVAILABLE; default: return null; } } public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { return internalValueMap; } private static final com.google.protobuf.Internal.EnumLiteMap< Status> internalValueMap = new com.google.protobuf.Internal.EnumLiteMap() { public Status findValueByNumber(int number) { return Status.forNumber(number); } }; public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { if (this == UNRECOGNIZED) { throw new java.lang.IllegalStateException( "Can't get the descriptor of an unrecognized enum value."); } return getDescriptor().getValues().get(ordinal()); } public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { return getDescriptor(); } public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDescriptor().getEnumTypes().get(0); } private static final Status[] VALUES = values(); public static Status valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc) { if (desc.getType() != getDescriptor()) { throw new java.lang.IllegalArgumentException( "EnumValueDescriptor is not for this type."); } if (desc.getIndex() == -1) { return UNRECOGNIZED; } return VALUES[desc.getIndex()]; } private final int value; private Status(int value) { this.value = value; } // @@protoc_insertion_point(enum_scope:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status) } public static final int STATUS_FIELD_NUMBER = 1; private int status_; /** *
     * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return The enum numeric value on the wire for status. */ @java.lang.Override public int getStatusValue() { return status_; } /** *
     * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
     * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return The status. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status getStatus() { @SuppressWarnings("deprecation") yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status result = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status.valueOf(status_); return result == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status.UNRECOGNIZED : result; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (status_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status.OK.getNumber()) { output.writeEnum(1, status_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (status_ != yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status.OK.getNumber()) { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, status_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) obj; if (status_ != other.status_) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + STATUS_FIELD_NUMBER; hash = (53 * hash) + status_; hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A gRPC status response action resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseActionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); status_ = 0; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction(this); result.status_ = status_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.getDefaultInstance()) return this; if (other.status_ != 0) { setStatusValue(other.getStatusValue()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int status_ = 0; /** *
       * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return The enum numeric value on the wire for status. */ @java.lang.Override public int getStatusValue() { return status_; } /** *
       * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @param value The enum numeric value on the wire for status to set. * @return This builder for chaining. */ public Builder setStatusValue(int value) { status_ = value; onChanged(); return this; } /** *
       * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return The status. */ @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status getStatus() { @SuppressWarnings("deprecation") yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status result = yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status.valueOf(status_); return result == null ? yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status.UNRECOGNIZED : result; } /** *
       * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @param value The status to set. * @return This builder for chaining. */ public Builder setStatus(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction.Status value) { if (value == null) { throw new NullPointerException(); } status_ = value.getNumber(); onChanged(); return this; } /** *
       * gRPC [status code](https://grpc.github.io/grpc/core/md_doc_statuscodes.html) to use in responses.
       * 
* * .yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction.Status status = 1; * @return This builder for chaining. */ public Builder clearStatus() { status_ = 0; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcStatusResponseAction) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public GrpcStatusResponseAction parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new GrpcStatusResponseAction(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcStatusResponseAction getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface HttpRouteActionOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.HttpRouteAction) com.google.protobuf.MessageOrBuilder { /** *
     * Backend group to forward requests to.
     * Stream (TCP) backend groups are not supported.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The backendGroupId. */ java.lang.String getBackendGroupId(); /** *
     * Backend group to forward requests to.
     * Stream (TCP) backend groups are not supported.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The bytes for backendGroupId. */ com.google.protobuf.ByteString getBackendGroupIdBytes(); /** *
     * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration timeout = 2; * @return Whether the timeout field is set. */ boolean hasTimeout(); /** *
     * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration timeout = 2; * @return The timeout. */ com.google.protobuf.Duration getTimeout(); /** *
     * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration timeout = 2; */ com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder(); /** *
     * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return Whether the idleTimeout field is set. */ boolean hasIdleTimeout(); /** *
     * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return The idleTimeout. */ com.google.protobuf.Duration getIdleTimeout(); /** *
     * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; */ com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder(); /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return Whether the hostRewrite field is set. */ boolean hasHostRewrite(); /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The hostRewrite. */ java.lang.String getHostRewrite(); /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The bytes for hostRewrite. */ com.google.protobuf.ByteString getHostRewriteBytes(); /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return Whether the autoHostRewrite field is set. */ boolean hasAutoHostRewrite(); /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return The autoHostRewrite. */ boolean getAutoHostRewrite(); /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
     * a request with `/foobaz` path is forwarded with `/barbaz` path.
     * For [StringMatch.exact_match], the whole path is replaced.
     * If not specified, the path is not changed.
     * 
* * string prefix_rewrite = 6; * @return The prefixRewrite. */ java.lang.String getPrefixRewrite(); /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
     * a request with `/foobaz` path is forwarded with `/barbaz` path.
     * For [StringMatch.exact_match], the whole path is replaced.
     * If not specified, the path is not changed.
     * 
* * string prefix_rewrite = 6; * @return The bytes for prefixRewrite. */ com.google.protobuf.ByteString getPrefixRewriteBytes(); /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @return A list containing the upgradeTypes. */ java.util.List getUpgradeTypesList(); /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @return The count of upgradeTypes. */ int getUpgradeTypesCount(); /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @param index The index of the element to return. * @return The upgradeTypes at the given index. */ java.lang.String getUpgradeTypes(int index); /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @param index The index of the value to return. * @return The bytes of the upgradeTypes at the given index. */ com.google.protobuf.ByteString getUpgradeTypesBytes(int index); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.HostRewriteSpecifierCase getHostRewriteSpecifierCase(); } /** *
   * An HTTP route action resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HttpRouteAction} */ public static final class HttpRouteAction extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.HttpRouteAction) HttpRouteActionOrBuilder { private static final long serialVersionUID = 0L; // Use HttpRouteAction.newBuilder() to construct. private HttpRouteAction(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private HttpRouteAction() { backendGroupId_ = ""; prefixRewrite_ = ""; upgradeTypes_ = com.google.protobuf.LazyStringArrayList.EMPTY; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new HttpRouteAction(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private HttpRouteAction( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); backendGroupId_ = s; break; } case 18: { com.google.protobuf.Duration.Builder subBuilder = null; if (timeout_ != null) { subBuilder = timeout_.toBuilder(); } timeout_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(timeout_); timeout_ = subBuilder.buildPartial(); } break; } case 26: { com.google.protobuf.Duration.Builder subBuilder = null; if (idleTimeout_ != null) { subBuilder = idleTimeout_.toBuilder(); } idleTimeout_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(idleTimeout_); idleTimeout_ = subBuilder.buildPartial(); } break; } case 34: { java.lang.String s = input.readStringRequireUtf8(); hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = s; break; } case 40: { hostRewriteSpecifier_ = input.readBool(); hostRewriteSpecifierCase_ = 5; break; } case 50: { java.lang.String s = input.readStringRequireUtf8(); prefixRewrite_ = s; break; } case 58: { java.lang.String s = input.readStringRequireUtf8(); if (!((mutable_bitField0_ & 0x00000001) != 0)) { upgradeTypes_ = new com.google.protobuf.LazyStringArrayList(); mutable_bitField0_ |= 0x00000001; } upgradeTypes_.add(s); break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { upgradeTypes_ = upgradeTypes_.getUnmodifiableView(); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder.class); } private int hostRewriteSpecifierCase_ = 0; private java.lang.Object hostRewriteSpecifier_; public enum HostRewriteSpecifierCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { HOST_REWRITE(4), AUTO_HOST_REWRITE(5), HOSTREWRITESPECIFIER_NOT_SET(0); private final int value; private HostRewriteSpecifierCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static HostRewriteSpecifierCase valueOf(int value) { return forNumber(value); } public static HostRewriteSpecifierCase forNumber(int value) { switch (value) { case 4: return HOST_REWRITE; case 5: return AUTO_HOST_REWRITE; case 0: return HOSTREWRITESPECIFIER_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public HostRewriteSpecifierCase getHostRewriteSpecifierCase() { return HostRewriteSpecifierCase.forNumber( hostRewriteSpecifierCase_); } public static final int BACKEND_GROUP_ID_FIELD_NUMBER = 1; private volatile java.lang.Object backendGroupId_; /** *
     * Backend group to forward requests to.
     * Stream (TCP) backend groups are not supported.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The backendGroupId. */ @java.lang.Override public java.lang.String getBackendGroupId() { java.lang.Object ref = backendGroupId_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); backendGroupId_ = s; return s; } } /** *
     * Backend group to forward requests to.
     * Stream (TCP) backend groups are not supported.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The bytes for backendGroupId. */ @java.lang.Override public com.google.protobuf.ByteString getBackendGroupIdBytes() { java.lang.Object ref = backendGroupId_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); backendGroupId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int TIMEOUT_FIELD_NUMBER = 2; private com.google.protobuf.Duration timeout_; /** *
     * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration timeout = 2; * @return Whether the timeout field is set. */ @java.lang.Override public boolean hasTimeout() { return timeout_ != null; } /** *
     * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration timeout = 2; * @return The timeout. */ @java.lang.Override public com.google.protobuf.Duration getTimeout() { return timeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeout_; } /** *
     * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration timeout = 2; */ @java.lang.Override public com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder() { return getTimeout(); } public static final int IDLE_TIMEOUT_FIELD_NUMBER = 3; private com.google.protobuf.Duration idleTimeout_; /** *
     * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return Whether the idleTimeout field is set. */ @java.lang.Override public boolean hasIdleTimeout() { return idleTimeout_ != null; } /** *
     * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return The idleTimeout. */ @java.lang.Override public com.google.protobuf.Duration getIdleTimeout() { return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; } /** *
     * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
     * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; */ @java.lang.Override public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { return getIdleTimeout(); } public static final int HOST_REWRITE_FIELD_NUMBER = 4; /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return Whether the hostRewrite field is set. */ public boolean hasHostRewrite() { return hostRewriteSpecifierCase_ == 4; } /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The hostRewrite. */ public java.lang.String getHostRewrite() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = s; } return s; } } /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The bytes for hostRewrite. */ public com.google.protobuf.ByteString getHostRewriteBytes() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int AUTO_HOST_REWRITE_FIELD_NUMBER = 5; /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return Whether the autoHostRewrite field is set. */ @java.lang.Override public boolean hasAutoHostRewrite() { return hostRewriteSpecifierCase_ == 5; } /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return The autoHostRewrite. */ @java.lang.Override public boolean getAutoHostRewrite() { if (hostRewriteSpecifierCase_ == 5) { return (java.lang.Boolean) hostRewriteSpecifier_; } return false; } public static final int PREFIX_REWRITE_FIELD_NUMBER = 6; private volatile java.lang.Object prefixRewrite_; /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
     * a request with `/foobaz` path is forwarded with `/barbaz` path.
     * For [StringMatch.exact_match], the whole path is replaced.
     * If not specified, the path is not changed.
     * 
* * string prefix_rewrite = 6; * @return The prefixRewrite. */ @java.lang.Override public java.lang.String getPrefixRewrite() { java.lang.Object ref = prefixRewrite_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); prefixRewrite_ = s; return s; } } /** *
     * Replacement for the path prefix matched by [StringMatch].
     * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
     * a request with `/foobaz` path is forwarded with `/barbaz` path.
     * For [StringMatch.exact_match], the whole path is replaced.
     * If not specified, the path is not changed.
     * 
* * string prefix_rewrite = 6; * @return The bytes for prefixRewrite. */ @java.lang.Override public com.google.protobuf.ByteString getPrefixRewriteBytes() { java.lang.Object ref = prefixRewrite_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); prefixRewrite_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int UPGRADE_TYPES_FIELD_NUMBER = 7; private com.google.protobuf.LazyStringList upgradeTypes_; /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @return A list containing the upgradeTypes. */ public com.google.protobuf.ProtocolStringList getUpgradeTypesList() { return upgradeTypes_; } /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @return The count of upgradeTypes. */ public int getUpgradeTypesCount() { return upgradeTypes_.size(); } /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @param index The index of the element to return. * @return The upgradeTypes at the given index. */ public java.lang.String getUpgradeTypes(int index) { return upgradeTypes_.get(index); } /** *
     * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
     * 
* * repeated string upgrade_types = 7; * @param index The index of the value to return. * @return The bytes of the upgradeTypes at the given index. */ public com.google.protobuf.ByteString getUpgradeTypesBytes(int index) { return upgradeTypes_.getByteString(index); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backendGroupId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, backendGroupId_); } if (timeout_ != null) { output.writeMessage(2, getTimeout()); } if (idleTimeout_ != null) { output.writeMessage(3, getIdleTimeout()); } if (hostRewriteSpecifierCase_ == 4) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, hostRewriteSpecifier_); } if (hostRewriteSpecifierCase_ == 5) { output.writeBool( 5, (boolean)((java.lang.Boolean) hostRewriteSpecifier_)); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(prefixRewrite_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 6, prefixRewrite_); } for (int i = 0; i < upgradeTypes_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, upgradeTypes_.getRaw(i)); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backendGroupId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, backendGroupId_); } if (timeout_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getTimeout()); } if (idleTimeout_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, getIdleTimeout()); } if (hostRewriteSpecifierCase_ == 4) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, hostRewriteSpecifier_); } if (hostRewriteSpecifierCase_ == 5) { size += com.google.protobuf.CodedOutputStream .computeBoolSize( 5, (boolean)((java.lang.Boolean) hostRewriteSpecifier_)); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(prefixRewrite_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, prefixRewrite_); } { int dataSize = 0; for (int i = 0; i < upgradeTypes_.size(); i++) { dataSize += computeStringSizeNoTag(upgradeTypes_.getRaw(i)); } size += dataSize; size += 1 * getUpgradeTypesList().size(); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) obj; if (!getBackendGroupId() .equals(other.getBackendGroupId())) return false; if (hasTimeout() != other.hasTimeout()) return false; if (hasTimeout()) { if (!getTimeout() .equals(other.getTimeout())) return false; } if (hasIdleTimeout() != other.hasIdleTimeout()) return false; if (hasIdleTimeout()) { if (!getIdleTimeout() .equals(other.getIdleTimeout())) return false; } if (!getPrefixRewrite() .equals(other.getPrefixRewrite())) return false; if (!getUpgradeTypesList() .equals(other.getUpgradeTypesList())) return false; if (!getHostRewriteSpecifierCase().equals(other.getHostRewriteSpecifierCase())) return false; switch (hostRewriteSpecifierCase_) { case 4: if (!getHostRewrite() .equals(other.getHostRewrite())) return false; break; case 5: if (getAutoHostRewrite() != other.getAutoHostRewrite()) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + BACKEND_GROUP_ID_FIELD_NUMBER; hash = (53 * hash) + getBackendGroupId().hashCode(); if (hasTimeout()) { hash = (37 * hash) + TIMEOUT_FIELD_NUMBER; hash = (53 * hash) + getTimeout().hashCode(); } if (hasIdleTimeout()) { hash = (37 * hash) + IDLE_TIMEOUT_FIELD_NUMBER; hash = (53 * hash) + getIdleTimeout().hashCode(); } hash = (37 * hash) + PREFIX_REWRITE_FIELD_NUMBER; hash = (53 * hash) + getPrefixRewrite().hashCode(); if (getUpgradeTypesCount() > 0) { hash = (37 * hash) + UPGRADE_TYPES_FIELD_NUMBER; hash = (53 * hash) + getUpgradeTypesList().hashCode(); } switch (hostRewriteSpecifierCase_) { case 4: hash = (37 * hash) + HOST_REWRITE_FIELD_NUMBER; hash = (53 * hash) + getHostRewrite().hashCode(); break; case 5: hash = (37 * hash) + AUTO_HOST_REWRITE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getAutoHostRewrite()); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * An HTTP route action resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.HttpRouteAction} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.HttpRouteAction) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteActionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); backendGroupId_ = ""; if (timeoutBuilder_ == null) { timeout_ = null; } else { timeout_ = null; timeoutBuilder_ = null; } if (idleTimeoutBuilder_ == null) { idleTimeout_ = null; } else { idleTimeout_ = null; idleTimeoutBuilder_ = null; } prefixRewrite_ = ""; upgradeTypes_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction(this); int from_bitField0_ = bitField0_; result.backendGroupId_ = backendGroupId_; if (timeoutBuilder_ == null) { result.timeout_ = timeout_; } else { result.timeout_ = timeoutBuilder_.build(); } if (idleTimeoutBuilder_ == null) { result.idleTimeout_ = idleTimeout_; } else { result.idleTimeout_ = idleTimeoutBuilder_.build(); } if (hostRewriteSpecifierCase_ == 4) { result.hostRewriteSpecifier_ = hostRewriteSpecifier_; } if (hostRewriteSpecifierCase_ == 5) { result.hostRewriteSpecifier_ = hostRewriteSpecifier_; } result.prefixRewrite_ = prefixRewrite_; if (((bitField0_ & 0x00000001) != 0)) { upgradeTypes_ = upgradeTypes_.getUnmodifiableView(); bitField0_ = (bitField0_ & ~0x00000001); } result.upgradeTypes_ = upgradeTypes_; result.hostRewriteSpecifierCase_ = hostRewriteSpecifierCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction.getDefaultInstance()) return this; if (!other.getBackendGroupId().isEmpty()) { backendGroupId_ = other.backendGroupId_; onChanged(); } if (other.hasTimeout()) { mergeTimeout(other.getTimeout()); } if (other.hasIdleTimeout()) { mergeIdleTimeout(other.getIdleTimeout()); } if (!other.getPrefixRewrite().isEmpty()) { prefixRewrite_ = other.prefixRewrite_; onChanged(); } if (!other.upgradeTypes_.isEmpty()) { if (upgradeTypes_.isEmpty()) { upgradeTypes_ = other.upgradeTypes_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureUpgradeTypesIsMutable(); upgradeTypes_.addAll(other.upgradeTypes_); } onChanged(); } switch (other.getHostRewriteSpecifierCase()) { case HOST_REWRITE: { hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = other.hostRewriteSpecifier_; onChanged(); break; } case AUTO_HOST_REWRITE: { setAutoHostRewrite(other.getAutoHostRewrite()); break; } case HOSTREWRITESPECIFIER_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int hostRewriteSpecifierCase_ = 0; private java.lang.Object hostRewriteSpecifier_; public HostRewriteSpecifierCase getHostRewriteSpecifierCase() { return HostRewriteSpecifierCase.forNumber( hostRewriteSpecifierCase_); } public Builder clearHostRewriteSpecifier() { hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; onChanged(); return this; } private int bitField0_; private java.lang.Object backendGroupId_ = ""; /** *
       * Backend group to forward requests to.
       * Stream (TCP) backend groups are not supported.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The backendGroupId. */ public java.lang.String getBackendGroupId() { java.lang.Object ref = backendGroupId_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); backendGroupId_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * Backend group to forward requests to.
       * Stream (TCP) backend groups are not supported.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The bytes for backendGroupId. */ public com.google.protobuf.ByteString getBackendGroupIdBytes() { java.lang.Object ref = backendGroupId_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); backendGroupId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Backend group to forward requests to.
       * Stream (TCP) backend groups are not supported.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @param value The backendGroupId to set. * @return This builder for chaining. */ public Builder setBackendGroupId( java.lang.String value) { if (value == null) { throw new NullPointerException(); } backendGroupId_ = value; onChanged(); return this; } /** *
       * Backend group to forward requests to.
       * Stream (TCP) backend groups are not supported.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return This builder for chaining. */ public Builder clearBackendGroupId() { backendGroupId_ = getDefaultInstance().getBackendGroupId(); onChanged(); return this; } /** *
       * Backend group to forward requests to.
       * Stream (TCP) backend groups are not supported.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @param value The bytes for backendGroupId to set. * @return This builder for chaining. */ public Builder setBackendGroupIdBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); backendGroupId_ = value; onChanged(); return this; } private com.google.protobuf.Duration timeout_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> timeoutBuilder_; /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; * @return Whether the timeout field is set. */ public boolean hasTimeout() { return timeoutBuilder_ != null || timeout_ != null; } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; * @return The timeout. */ public com.google.protobuf.Duration getTimeout() { if (timeoutBuilder_ == null) { return timeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeout_; } else { return timeoutBuilder_.getMessage(); } } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ public Builder setTimeout(com.google.protobuf.Duration value) { if (timeoutBuilder_ == null) { if (value == null) { throw new NullPointerException(); } timeout_ = value; onChanged(); } else { timeoutBuilder_.setMessage(value); } return this; } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ public Builder setTimeout( com.google.protobuf.Duration.Builder builderForValue) { if (timeoutBuilder_ == null) { timeout_ = builderForValue.build(); onChanged(); } else { timeoutBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ public Builder mergeTimeout(com.google.protobuf.Duration value) { if (timeoutBuilder_ == null) { if (timeout_ != null) { timeout_ = com.google.protobuf.Duration.newBuilder(timeout_).mergeFrom(value).buildPartial(); } else { timeout_ = value; } onChanged(); } else { timeoutBuilder_.mergeFrom(value); } return this; } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ public Builder clearTimeout() { if (timeoutBuilder_ == null) { timeout_ = null; onChanged(); } else { timeout_ = null; timeoutBuilder_ = null; } return this; } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ public com.google.protobuf.Duration.Builder getTimeoutBuilder() { onChanged(); return getTimeoutFieldBuilder().getBuilder(); } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ public com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder() { if (timeoutBuilder_ != null) { return timeoutBuilder_.getMessageOrBuilder(); } else { return timeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : timeout_; } } /** *
       * Overall timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration timeout = 2; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> getTimeoutFieldBuilder() { if (timeoutBuilder_ == null) { timeoutBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>( getTimeout(), getParentForChildren(), isClean()); timeout_ = null; } return timeoutBuilder_; } private com.google.protobuf.Duration idleTimeout_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> idleTimeoutBuilder_; /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; * @return Whether the idleTimeout field is set. */ public boolean hasIdleTimeout() { return idleTimeoutBuilder_ != null || idleTimeout_ != null; } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; * @return The idleTimeout. */ public com.google.protobuf.Duration getIdleTimeout() { if (idleTimeoutBuilder_ == null) { return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; } else { return idleTimeoutBuilder_.getMessage(); } } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder setIdleTimeout(com.google.protobuf.Duration value) { if (idleTimeoutBuilder_ == null) { if (value == null) { throw new NullPointerException(); } idleTimeout_ = value; onChanged(); } else { idleTimeoutBuilder_.setMessage(value); } return this; } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder setIdleTimeout( com.google.protobuf.Duration.Builder builderForValue) { if (idleTimeoutBuilder_ == null) { idleTimeout_ = builderForValue.build(); onChanged(); } else { idleTimeoutBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { if (idleTimeoutBuilder_ == null) { if (idleTimeout_ != null) { idleTimeout_ = com.google.protobuf.Duration.newBuilder(idleTimeout_).mergeFrom(value).buildPartial(); } else { idleTimeout_ = value; } onChanged(); } else { idleTimeoutBuilder_.mergeFrom(value); } return this; } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder clearIdleTimeout() { if (idleTimeoutBuilder_ == null) { idleTimeout_ = null; onChanged(); } else { idleTimeout_ = null; idleTimeoutBuilder_ = null; } return this; } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder() { onChanged(); return getIdleTimeoutFieldBuilder().getBuilder(); } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { if (idleTimeoutBuilder_ != null) { return idleTimeoutBuilder_.getMessageOrBuilder(); } else { return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; } } /** *
       * Idle timeout for an HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events (`EventSource` interface) etc.
       * If a connection times out, the load balancer responds to the client with a `504 Gateway Timeout` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration (see [timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> getIdleTimeoutFieldBuilder() { if (idleTimeoutBuilder_ == null) { idleTimeoutBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>( getIdleTimeout(), getParentForChildren(), isClean()); idleTimeout_ = null; } return idleTimeoutBuilder_; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return Whether the hostRewrite field is set. */ @java.lang.Override public boolean hasHostRewrite() { return hostRewriteSpecifierCase_ == 4; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return The hostRewrite. */ @java.lang.Override public java.lang.String getHostRewrite() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return The bytes for hostRewrite. */ @java.lang.Override public com.google.protobuf.ByteString getHostRewriteBytes() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @param value The hostRewrite to set. * @return This builder for chaining. */ public Builder setHostRewrite( java.lang.String value) { if (value == null) { throw new NullPointerException(); } hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = value; onChanged(); return this; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return This builder for chaining. */ public Builder clearHostRewrite() { if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; onChanged(); } return this; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @param value The bytes for hostRewrite to set. * @return This builder for chaining. */ public Builder setHostRewriteBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = value; onChanged(); return this; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @return Whether the autoHostRewrite field is set. */ public boolean hasAutoHostRewrite() { return hostRewriteSpecifierCase_ == 5; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @return The autoHostRewrite. */ public boolean getAutoHostRewrite() { if (hostRewriteSpecifierCase_ == 5) { return (java.lang.Boolean) hostRewriteSpecifier_; } return false; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @param value The autoHostRewrite to set. * @return This builder for chaining. */ public Builder setAutoHostRewrite(boolean value) { hostRewriteSpecifierCase_ = 5; hostRewriteSpecifier_ = value; onChanged(); return this; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @return This builder for chaining. */ public Builder clearAutoHostRewrite() { if (hostRewriteSpecifierCase_ == 5) { hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; onChanged(); } return this; } private java.lang.Object prefixRewrite_ = ""; /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
       * a request with `/foobaz` path is forwarded with `/barbaz` path.
       * For [StringMatch.exact_match], the whole path is replaced.
       * If not specified, the path is not changed.
       * 
* * string prefix_rewrite = 6; * @return The prefixRewrite. */ public java.lang.String getPrefixRewrite() { java.lang.Object ref = prefixRewrite_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); prefixRewrite_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
       * a request with `/foobaz` path is forwarded with `/barbaz` path.
       * For [StringMatch.exact_match], the whole path is replaced.
       * If not specified, the path is not changed.
       * 
* * string prefix_rewrite = 6; * @return The bytes for prefixRewrite. */ public com.google.protobuf.ByteString getPrefixRewriteBytes() { java.lang.Object ref = prefixRewrite_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); prefixRewrite_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
       * a request with `/foobaz` path is forwarded with `/barbaz` path.
       * For [StringMatch.exact_match], the whole path is replaced.
       * If not specified, the path is not changed.
       * 
* * string prefix_rewrite = 6; * @param value The prefixRewrite to set. * @return This builder for chaining. */ public Builder setPrefixRewrite( java.lang.String value) { if (value == null) { throw new NullPointerException(); } prefixRewrite_ = value; onChanged(); return this; } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
       * a request with `/foobaz` path is forwarded with `/barbaz` path.
       * For [StringMatch.exact_match], the whole path is replaced.
       * If not specified, the path is not changed.
       * 
* * string prefix_rewrite = 6; * @return This builder for chaining. */ public Builder clearPrefixRewrite() { prefixRewrite_ = getDefaultInstance().getPrefixRewrite(); onChanged(); return this; } /** *
       * Replacement for the path prefix matched by [StringMatch].
       * For instance, if [StringMatch.prefix_match] value is `/foo` and `prefix_rewrite` value is `/bar`,
       * a request with `/foobaz` path is forwarded with `/barbaz` path.
       * For [StringMatch.exact_match], the whole path is replaced.
       * If not specified, the path is not changed.
       * 
* * string prefix_rewrite = 6; * @param value The bytes for prefixRewrite to set. * @return This builder for chaining. */ public Builder setPrefixRewriteBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); prefixRewrite_ = value; onChanged(); return this; } private com.google.protobuf.LazyStringList upgradeTypes_ = com.google.protobuf.LazyStringArrayList.EMPTY; private void ensureUpgradeTypesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { upgradeTypes_ = new com.google.protobuf.LazyStringArrayList(upgradeTypes_); bitField0_ |= 0x00000001; } } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @return A list containing the upgradeTypes. */ public com.google.protobuf.ProtocolStringList getUpgradeTypesList() { return upgradeTypes_.getUnmodifiableView(); } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @return The count of upgradeTypes. */ public int getUpgradeTypesCount() { return upgradeTypes_.size(); } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @param index The index of the element to return. * @return The upgradeTypes at the given index. */ public java.lang.String getUpgradeTypes(int index) { return upgradeTypes_.get(index); } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @param index The index of the value to return. * @return The bytes of the upgradeTypes at the given index. */ public com.google.protobuf.ByteString getUpgradeTypesBytes(int index) { return upgradeTypes_.getByteString(index); } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @param index The index to set the value at. * @param value The upgradeTypes to set. * @return This builder for chaining. */ public Builder setUpgradeTypes( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureUpgradeTypesIsMutable(); upgradeTypes_.set(index, value); onChanged(); return this; } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @param value The upgradeTypes to add. * @return This builder for chaining. */ public Builder addUpgradeTypes( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureUpgradeTypesIsMutable(); upgradeTypes_.add(value); onChanged(); return this; } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @param values The upgradeTypes to add. * @return This builder for chaining. */ public Builder addAllUpgradeTypes( java.lang.Iterable values) { ensureUpgradeTypesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, upgradeTypes_); onChanged(); return this; } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @return This builder for chaining. */ public Builder clearUpgradeTypes() { upgradeTypes_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** *
       * Supported values for HTTP `Upgrade` header. E.g. `websocket`.
       * 
* * repeated string upgrade_types = 7; * @param value The bytes of the upgradeTypes to add. * @return This builder for chaining. */ public Builder addUpgradeTypesBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureUpgradeTypesIsMutable(); upgradeTypes_.add(value); onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.HttpRouteAction) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.HttpRouteAction) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public HttpRouteAction parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new HttpRouteAction(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.HttpRouteAction getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface GrpcRouteActionOrBuilder extends // @@protoc_insertion_point(interface_extends:yandex.cloud.apploadbalancer.v1.GrpcRouteAction) com.google.protobuf.MessageOrBuilder { /** *
     * Backend group to forward requests to.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The backendGroupId. */ java.lang.String getBackendGroupId(); /** *
     * Backend group to forward requests to.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The bytes for backendGroupId. */ com.google.protobuf.ByteString getBackendGroupIdBytes(); /** *
     * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration max_timeout = 2; * @return Whether the maxTimeout field is set. */ boolean hasMaxTimeout(); /** *
     * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration max_timeout = 2; * @return The maxTimeout. */ com.google.protobuf.Duration getMaxTimeout(); /** *
     * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration max_timeout = 2; */ com.google.protobuf.DurationOrBuilder getMaxTimeoutOrBuilder(); /** *
     * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events etc.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
     * (see [max_timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return Whether the idleTimeout field is set. */ boolean hasIdleTimeout(); /** *
     * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events etc.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
     * (see [max_timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return The idleTimeout. */ com.google.protobuf.Duration getIdleTimeout(); /** *
     * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events etc.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
     * (see [max_timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; */ com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder(); /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return Whether the hostRewrite field is set. */ boolean hasHostRewrite(); /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The hostRewrite. */ java.lang.String getHostRewrite(); /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The bytes for hostRewrite. */ com.google.protobuf.ByteString getHostRewriteBytes(); /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return Whether the autoHostRewrite field is set. */ boolean hasAutoHostRewrite(); /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return The autoHostRewrite. */ boolean getAutoHostRewrite(); public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.HostRewriteSpecifierCase getHostRewriteSpecifierCase(); } /** *
   * A gRPC route action resource.
   * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcRouteAction} */ public static final class GrpcRouteAction extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:yandex.cloud.apploadbalancer.v1.GrpcRouteAction) GrpcRouteActionOrBuilder { private static final long serialVersionUID = 0L; // Use GrpcRouteAction.newBuilder() to construct. private GrpcRouteAction(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private GrpcRouteAction() { backendGroupId_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new GrpcRouteAction(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private GrpcRouteAction( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); backendGroupId_ = s; break; } case 18: { com.google.protobuf.Duration.Builder subBuilder = null; if (maxTimeout_ != null) { subBuilder = maxTimeout_.toBuilder(); } maxTimeout_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(maxTimeout_); maxTimeout_ = subBuilder.buildPartial(); } break; } case 26: { com.google.protobuf.Duration.Builder subBuilder = null; if (idleTimeout_ != null) { subBuilder = idleTimeout_.toBuilder(); } idleTimeout_ = input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(idleTimeout_); idleTimeout_ = subBuilder.buildPartial(); } break; } case 34: { java.lang.String s = input.readStringRequireUtf8(); hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = s; break; } case 40: { hostRewriteSpecifier_ = input.readBool(); hostRewriteSpecifierCase_ = 5; break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder.class); } private int hostRewriteSpecifierCase_ = 0; private java.lang.Object hostRewriteSpecifier_; public enum HostRewriteSpecifierCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { HOST_REWRITE(4), AUTO_HOST_REWRITE(5), HOSTREWRITESPECIFIER_NOT_SET(0); private final int value; private HostRewriteSpecifierCase(int value) { this.value = value; } /** * @param value The number of the enum to look for. * @return The enum associated with the given number. * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated public static HostRewriteSpecifierCase valueOf(int value) { return forNumber(value); } public static HostRewriteSpecifierCase forNumber(int value) { switch (value) { case 4: return HOST_REWRITE; case 5: return AUTO_HOST_REWRITE; case 0: return HOSTREWRITESPECIFIER_NOT_SET; default: return null; } } public int getNumber() { return this.value; } }; public HostRewriteSpecifierCase getHostRewriteSpecifierCase() { return HostRewriteSpecifierCase.forNumber( hostRewriteSpecifierCase_); } public static final int BACKEND_GROUP_ID_FIELD_NUMBER = 1; private volatile java.lang.Object backendGroupId_; /** *
     * Backend group to forward requests to.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The backendGroupId. */ @java.lang.Override public java.lang.String getBackendGroupId() { java.lang.Object ref = backendGroupId_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); backendGroupId_ = s; return s; } } /** *
     * Backend group to forward requests to.
     * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The bytes for backendGroupId. */ @java.lang.Override public com.google.protobuf.ByteString getBackendGroupIdBytes() { java.lang.Object ref = backendGroupId_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); backendGroupId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int MAX_TIMEOUT_FIELD_NUMBER = 2; private com.google.protobuf.Duration maxTimeout_; /** *
     * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration max_timeout = 2; * @return Whether the maxTimeout field is set. */ @java.lang.Override public boolean hasMaxTimeout() { return maxTimeout_ != null; } /** *
     * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration max_timeout = 2; * @return The maxTimeout. */ @java.lang.Override public com.google.protobuf.Duration getMaxTimeout() { return maxTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : maxTimeout_; } /** *
     * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
     * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * Default value: `60`.
     * 
* * .google.protobuf.Duration max_timeout = 2; */ @java.lang.Override public com.google.protobuf.DurationOrBuilder getMaxTimeoutOrBuilder() { return getMaxTimeout(); } public static final int IDLE_TIMEOUT_FIELD_NUMBER = 3; private com.google.protobuf.Duration idleTimeout_; /** *
     * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events etc.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
     * (see [max_timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return Whether the idleTimeout field is set. */ @java.lang.Override public boolean hasIdleTimeout() { return idleTimeout_ != null; } /** *
     * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events etc.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
     * (see [max_timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; * @return The idleTimeout. */ @java.lang.Override public com.google.protobuf.Duration getIdleTimeout() { return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; } /** *
     * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
     * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
     * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
     * server-push mechanisms such as long polling, server-sent events etc.
     * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
     * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
     * (see [max_timeout]).
     * 
* * .google.protobuf.Duration idle_timeout = 3; */ @java.lang.Override public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { return getIdleTimeout(); } public static final int HOST_REWRITE_FIELD_NUMBER = 4; /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return Whether the hostRewrite field is set. */ public boolean hasHostRewrite() { return hostRewriteSpecifierCase_ == 4; } /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The hostRewrite. */ public java.lang.String getHostRewrite() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = s; } return s; } } /** *
     * Host replacement.
     * 
* * string host_rewrite = 4; * @return The bytes for hostRewrite. */ public com.google.protobuf.ByteString getHostRewriteBytes() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int AUTO_HOST_REWRITE_FIELD_NUMBER = 5; /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return Whether the autoHostRewrite field is set. */ @java.lang.Override public boolean hasAutoHostRewrite() { return hostRewriteSpecifierCase_ == 5; } /** *
     * Automatically replaces the host with that of the target.
     * 
* * bool auto_host_rewrite = 5; * @return The autoHostRewrite. */ @java.lang.Override public boolean getAutoHostRewrite() { if (hostRewriteSpecifierCase_ == 5) { return (java.lang.Boolean) hostRewriteSpecifier_; } return false; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backendGroupId_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, backendGroupId_); } if (maxTimeout_ != null) { output.writeMessage(2, getMaxTimeout()); } if (idleTimeout_ != null) { output.writeMessage(3, getIdleTimeout()); } if (hostRewriteSpecifierCase_ == 4) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, hostRewriteSpecifier_); } if (hostRewriteSpecifierCase_ == 5) { output.writeBool( 5, (boolean)((java.lang.Boolean) hostRewriteSpecifier_)); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(backendGroupId_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, backendGroupId_); } if (maxTimeout_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getMaxTimeout()); } if (idleTimeout_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, getIdleTimeout()); } if (hostRewriteSpecifierCase_ == 4) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, hostRewriteSpecifier_); } if (hostRewriteSpecifierCase_ == 5) { size += com.google.protobuf.CodedOutputStream .computeBoolSize( 5, (boolean)((java.lang.Boolean) hostRewriteSpecifier_)); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction)) { return super.equals(obj); } yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction other = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) obj; if (!getBackendGroupId() .equals(other.getBackendGroupId())) return false; if (hasMaxTimeout() != other.hasMaxTimeout()) return false; if (hasMaxTimeout()) { if (!getMaxTimeout() .equals(other.getMaxTimeout())) return false; } if (hasIdleTimeout() != other.hasIdleTimeout()) return false; if (hasIdleTimeout()) { if (!getIdleTimeout() .equals(other.getIdleTimeout())) return false; } if (!getHostRewriteSpecifierCase().equals(other.getHostRewriteSpecifierCase())) return false; switch (hostRewriteSpecifierCase_) { case 4: if (!getHostRewrite() .equals(other.getHostRewrite())) return false; break; case 5: if (getAutoHostRewrite() != other.getAutoHostRewrite()) return false; break; case 0: default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + BACKEND_GROUP_ID_FIELD_NUMBER; hash = (53 * hash) + getBackendGroupId().hashCode(); if (hasMaxTimeout()) { hash = (37 * hash) + MAX_TIMEOUT_FIELD_NUMBER; hash = (53 * hash) + getMaxTimeout().hashCode(); } if (hasIdleTimeout()) { hash = (37 * hash) + IDLE_TIMEOUT_FIELD_NUMBER; hash = (53 * hash) + getIdleTimeout().hashCode(); } switch (hostRewriteSpecifierCase_) { case 4: hash = (37 * hash) + HOST_REWRITE_FIELD_NUMBER; hash = (53 * hash) + getHostRewrite().hashCode(); break; case 5: hash = (37 * hash) + AUTO_HOST_REWRITE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getAutoHostRewrite()); break; case 0: default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
     * A gRPC route action resource.
     * 
* * Protobuf type {@code yandex.cloud.apploadbalancer.v1.GrpcRouteAction} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:yandex.cloud.apploadbalancer.v1.GrpcRouteAction) yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteActionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_fieldAccessorTable .ensureFieldAccessorsInitialized( yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.class, yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.Builder.class); } // Construct using yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); backendGroupId_ = ""; if (maxTimeoutBuilder_ == null) { maxTimeout_ = null; } else { maxTimeout_ = null; maxTimeoutBuilder_ = null; } if (idleTimeoutBuilder_ == null) { idleTimeout_ = null; } else { idleTimeout_ = null; idleTimeoutBuilder_ = null; } hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_descriptor; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction getDefaultInstanceForType() { return yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance(); } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction build() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction buildPartial() { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction result = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction(this); result.backendGroupId_ = backendGroupId_; if (maxTimeoutBuilder_ == null) { result.maxTimeout_ = maxTimeout_; } else { result.maxTimeout_ = maxTimeoutBuilder_.build(); } if (idleTimeoutBuilder_ == null) { result.idleTimeout_ = idleTimeout_; } else { result.idleTimeout_ = idleTimeoutBuilder_.build(); } if (hostRewriteSpecifierCase_ == 4) { result.hostRewriteSpecifier_ = hostRewriteSpecifier_; } if (hostRewriteSpecifierCase_ == 5) { result.hostRewriteSpecifier_ = hostRewriteSpecifier_; } result.hostRewriteSpecifierCase_ = hostRewriteSpecifierCase_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) { return mergeFrom((yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction other) { if (other == yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction.getDefaultInstance()) return this; if (!other.getBackendGroupId().isEmpty()) { backendGroupId_ = other.backendGroupId_; onChanged(); } if (other.hasMaxTimeout()) { mergeMaxTimeout(other.getMaxTimeout()); } if (other.hasIdleTimeout()) { mergeIdleTimeout(other.getIdleTimeout()); } switch (other.getHostRewriteSpecifierCase()) { case HOST_REWRITE: { hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = other.hostRewriteSpecifier_; onChanged(); break; } case AUTO_HOST_REWRITE: { setAutoHostRewrite(other.getAutoHostRewrite()); break; } case HOSTREWRITESPECIFIER_NOT_SET: { break; } } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int hostRewriteSpecifierCase_ = 0; private java.lang.Object hostRewriteSpecifier_; public HostRewriteSpecifierCase getHostRewriteSpecifierCase() { return HostRewriteSpecifierCase.forNumber( hostRewriteSpecifierCase_); } public Builder clearHostRewriteSpecifier() { hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; onChanged(); return this; } private java.lang.Object backendGroupId_ = ""; /** *
       * Backend group to forward requests to.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The backendGroupId. */ public java.lang.String getBackendGroupId() { java.lang.Object ref = backendGroupId_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); backendGroupId_ = s; return s; } else { return (java.lang.String) ref; } } /** *
       * Backend group to forward requests to.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return The bytes for backendGroupId. */ public com.google.protobuf.ByteString getBackendGroupIdBytes() { java.lang.Object ref = backendGroupId_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); backendGroupId_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Backend group to forward requests to.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @param value The backendGroupId to set. * @return This builder for chaining. */ public Builder setBackendGroupId( java.lang.String value) { if (value == null) { throw new NullPointerException(); } backendGroupId_ = value; onChanged(); return this; } /** *
       * Backend group to forward requests to.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @return This builder for chaining. */ public Builder clearBackendGroupId() { backendGroupId_ = getDefaultInstance().getBackendGroupId(); onChanged(); return this; } /** *
       * Backend group to forward requests to.
       * 
* * string backend_group_id = 1 [(.yandex.cloud.required) = true]; * @param value The bytes for backendGroupId to set. * @return This builder for chaining. */ public Builder setBackendGroupIdBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); backendGroupId_ = value; onChanged(); return this; } private com.google.protobuf.Duration maxTimeout_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> maxTimeoutBuilder_; /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; * @return Whether the maxTimeout field is set. */ public boolean hasMaxTimeout() { return maxTimeoutBuilder_ != null || maxTimeout_ != null; } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; * @return The maxTimeout. */ public com.google.protobuf.Duration getMaxTimeout() { if (maxTimeoutBuilder_ == null) { return maxTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : maxTimeout_; } else { return maxTimeoutBuilder_.getMessage(); } } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ public Builder setMaxTimeout(com.google.protobuf.Duration value) { if (maxTimeoutBuilder_ == null) { if (value == null) { throw new NullPointerException(); } maxTimeout_ = value; onChanged(); } else { maxTimeoutBuilder_.setMessage(value); } return this; } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ public Builder setMaxTimeout( com.google.protobuf.Duration.Builder builderForValue) { if (maxTimeoutBuilder_ == null) { maxTimeout_ = builderForValue.build(); onChanged(); } else { maxTimeoutBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ public Builder mergeMaxTimeout(com.google.protobuf.Duration value) { if (maxTimeoutBuilder_ == null) { if (maxTimeout_ != null) { maxTimeout_ = com.google.protobuf.Duration.newBuilder(maxTimeout_).mergeFrom(value).buildPartial(); } else { maxTimeout_ = value; } onChanged(); } else { maxTimeoutBuilder_.mergeFrom(value); } return this; } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ public Builder clearMaxTimeout() { if (maxTimeoutBuilder_ == null) { maxTimeout_ = null; onChanged(); } else { maxTimeout_ = null; maxTimeoutBuilder_ = null; } return this; } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ public com.google.protobuf.Duration.Builder getMaxTimeoutBuilder() { onChanged(); return getMaxTimeoutFieldBuilder().getBuilder(); } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ public com.google.protobuf.DurationOrBuilder getMaxTimeoutOrBuilder() { if (maxTimeoutBuilder_ != null) { return maxTimeoutBuilder_.getMessageOrBuilder(); } else { return maxTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : maxTimeout_; } } /** *
       * Overall timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is kept alive for, regardless of whether data is transferred over it.
       * If a client specifies a lower timeout in HTTP `grpc-timeout` header, the `max_timeout` value is ignored.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * Default value: `60`.
       * 
* * .google.protobuf.Duration max_timeout = 2; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> getMaxTimeoutFieldBuilder() { if (maxTimeoutBuilder_ == null) { maxTimeoutBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>( getMaxTimeout(), getParentForChildren(), isClean()); maxTimeout_ = null; } return maxTimeoutBuilder_; } private com.google.protobuf.Duration idleTimeout_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> idleTimeoutBuilder_; /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; * @return Whether the idleTimeout field is set. */ public boolean hasIdleTimeout() { return idleTimeoutBuilder_ != null || idleTimeout_ != null; } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; * @return The idleTimeout. */ public com.google.protobuf.Duration getIdleTimeout() { if (idleTimeoutBuilder_ == null) { return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; } else { return idleTimeoutBuilder_.getMessage(); } } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder setIdleTimeout(com.google.protobuf.Duration value) { if (idleTimeoutBuilder_ == null) { if (value == null) { throw new NullPointerException(); } idleTimeout_ = value; onChanged(); } else { idleTimeoutBuilder_.setMessage(value); } return this; } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder setIdleTimeout( com.google.protobuf.Duration.Builder builderForValue) { if (idleTimeoutBuilder_ == null) { idleTimeout_ = builderForValue.build(); onChanged(); } else { idleTimeoutBuilder_.setMessage(builderForValue.build()); } return this; } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder mergeIdleTimeout(com.google.protobuf.Duration value) { if (idleTimeoutBuilder_ == null) { if (idleTimeout_ != null) { idleTimeout_ = com.google.protobuf.Duration.newBuilder(idleTimeout_).mergeFrom(value).buildPartial(); } else { idleTimeout_ = value; } onChanged(); } else { idleTimeoutBuilder_.mergeFrom(value); } return this; } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public Builder clearIdleTimeout() { if (idleTimeoutBuilder_ == null) { idleTimeout_ = null; onChanged(); } else { idleTimeout_ = null; idleTimeoutBuilder_ = null; } return this; } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder() { onChanged(); return getIdleTimeoutFieldBuilder().getBuilder(); } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ public com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder() { if (idleTimeoutBuilder_ != null) { return idleTimeoutBuilder_.getMessageOrBuilder(); } else { return idleTimeout_ == null ? com.google.protobuf.Duration.getDefaultInstance() : idleTimeout_; } } /** *
       * Idle timeout for an underlying HTTP connection between a load balancer node an a backend from the backend group:
       * the maximum time the connection is allowed to be idle, i.e. without any data transferred over it.
       * Specifying meaningful values for both [max_timeout] and `idle_timeout` is useful for implementing
       * server-push mechanisms such as long polling, server-sent events etc.
       * If a connection times out, the load balancer responds to the client with an `UNAVAILABLE` status code.
       * If not specified, no idle timeout is used, and an alive connection may be idle for any duration
       * (see [max_timeout]).
       * 
* * .google.protobuf.Duration idle_timeout = 3; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder> getIdleTimeoutFieldBuilder() { if (idleTimeoutBuilder_ == null) { idleTimeoutBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Duration, com.google.protobuf.Duration.Builder, com.google.protobuf.DurationOrBuilder>( getIdleTimeout(), getParentForChildren(), isClean()); idleTimeout_ = null; } return idleTimeoutBuilder_; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return Whether the hostRewrite field is set. */ @java.lang.Override public boolean hasHostRewrite() { return hostRewriteSpecifierCase_ == 4; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return The hostRewrite. */ @java.lang.Override public java.lang.String getHostRewrite() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = s; } return s; } else { return (java.lang.String) ref; } } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return The bytes for hostRewrite. */ @java.lang.Override public com.google.protobuf.ByteString getHostRewriteBytes() { java.lang.Object ref = ""; if (hostRewriteSpecifierCase_ == 4) { ref = hostRewriteSpecifier_; } if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifier_ = b; } return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @param value The hostRewrite to set. * @return This builder for chaining. */ public Builder setHostRewrite( java.lang.String value) { if (value == null) { throw new NullPointerException(); } hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = value; onChanged(); return this; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @return This builder for chaining. */ public Builder clearHostRewrite() { if (hostRewriteSpecifierCase_ == 4) { hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; onChanged(); } return this; } /** *
       * Host replacement.
       * 
* * string host_rewrite = 4; * @param value The bytes for hostRewrite to set. * @return This builder for chaining. */ public Builder setHostRewriteBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); hostRewriteSpecifierCase_ = 4; hostRewriteSpecifier_ = value; onChanged(); return this; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @return Whether the autoHostRewrite field is set. */ public boolean hasAutoHostRewrite() { return hostRewriteSpecifierCase_ == 5; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @return The autoHostRewrite. */ public boolean getAutoHostRewrite() { if (hostRewriteSpecifierCase_ == 5) { return (java.lang.Boolean) hostRewriteSpecifier_; } return false; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @param value The autoHostRewrite to set. * @return This builder for chaining. */ public Builder setAutoHostRewrite(boolean value) { hostRewriteSpecifierCase_ = 5; hostRewriteSpecifier_ = value; onChanged(); return this; } /** *
       * Automatically replaces the host with that of the target.
       * 
* * bool auto_host_rewrite = 5; * @return This builder for chaining. */ public Builder clearAutoHostRewrite() { if (hostRewriteSpecifierCase_ == 5) { hostRewriteSpecifierCase_ = 0; hostRewriteSpecifier_ = null; onChanged(); } return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:yandex.cloud.apploadbalancer.v1.GrpcRouteAction) } // @@protoc_insertion_point(class_scope:yandex.cloud.apploadbalancer.v1.GrpcRouteAction) private static final yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction(); } public static yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public GrpcRouteAction parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new GrpcRouteAction(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public yandex.cloud.api.apploadbalancer.v1.VirtualHostOuterClass.GrpcRouteAction getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_RBAC_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_RBAC_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_Principals_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_Principals_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_Principal_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_Route_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_Route_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_descriptor; private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; } private static com.google.protobuf.Descriptors.FileDescriptor descriptor; static { java.lang.String[] descriptorData = { "\n2yandex/cloud/apploadbalancer/v1/virtua" + "l_host.proto\022\037yandex.cloud.apploadbalanc" + "er.v1\032\036google/protobuf/duration.proto\032-y" + "andex/cloud/apploadbalancer/v1/payload.p" + "roto\032\035yandex/cloud/validation.proto\"\335\002\n\013" + "VirtualHost\022\022\n\004name\030\001 \001(\tB\004\350\3071\001\022\021\n\tautho" + "rity\030\002 \003(\t\0226\n\006routes\030\003 \003(\0132&.yandex.clou" + "d.apploadbalancer.v1.Route\022S\n\026modify_req" + "uest_headers\030\004 \003(\01323.yandex.cloud.apploa" + "dbalancer.v1.HeaderModification\022T\n\027modif" + "y_response_headers\030\005 \003(\01323.yandex.cloud." + "apploadbalancer.v1.HeaderModification\022D\n" + "\rroute_options\030\006 \001(\0132-.yandex.cloud.appl" + "oadbalancer.v1.RouteOptions\"\356\001\n\014RouteOpt" + "ions\022S\n\026modify_request_headers\030\001 \003(\01323.y" + "andex.cloud.apploadbalancer.v1.HeaderMod" + "ification\022T\n\027modify_response_headers\030\002 \003" + "(\01323.yandex.cloud.apploadbalancer.v1.Hea" + "derModification\0223\n\004rbac\030\003 \001(\0132%.yandex.c" + "loud.apploadbalancer.v1.RBAC\"\313\001\n\004RBAC\022B\n" + "\006action\030\001 \001(\0162,.yandex.cloud.apploadbala" + "ncer.v1.RBAC.ActionB\004\350\3071\001\022H\n\nprincipals\030" + "\002 \003(\0132+.yandex.cloud.apploadbalancer.v1." + "PrincipalsB\007\202\3101\003>=1\"5\n\006Action\022\026\n\022ACTION_" + "UNSPECIFIED\020\000\022\t\n\005ALLOW\020\001\022\010\n\004DENY\020\002\"Y\n\nPr" + "incipals\022K\n\016and_principals\030\001 \003(\0132*.yande" + "x.cloud.apploadbalancer.v1.PrincipalB\007\202\310" + "1\003>=1\"\361\001\n\tPrincipal\022J\n\006header\030\001 \001(\01328.ya" + "ndex.cloud.apploadbalancer.v1.Principal." + "HeaderMatcherH\000\022\023\n\tremote_ip\030\002 \001(\tH\000\022\r\n\003" + "any\030\003 \001(\010H\000\032`\n\rHeaderMatcher\022\022\n\004name\030\001 \001" + "(\tB\004\350\3071\001\022;\n\005value\030\002 \001(\0132,.yandex.cloud.a" + "pploadbalancer.v1.StringMatchB\022\n\nidentif" + "ier\022\004\300\3011\001\"x\n\022HeaderModification\022\014\n\004name\030" + "\001 \001(\t\022\020\n\006append\030\002 \001(\tH\000\022\021\n\007replace\030\003 \001(\t" + "H\000\022\020\n\006remove\030\004 \001(\010H\000\022\020\n\006rename\030\005 \001(\tH\000B\013" + "\n\toperation\"\350\001\n\005Route\022\022\n\004name\030\001 \001(\tB\004\350\3071" + "\001\022:\n\004http\030\002 \001(\0132*.yandex.cloud.apploadba" + "lancer.v1.HttpRouteH\000\022:\n\004grpc\030\003 \001(\0132*.ya" + "ndex.cloud.apploadbalancer.v1.GrpcRouteH" + "\000\022D\n\rroute_options\030\004 \001(\0132-.yandex.cloud." + "apploadbalancer.v1.RouteOptionsB\r\n\005route" + "\022\004\300\3011\001\"\265\002\n\tHttpRoute\022>\n\005match\030\001 \001(\0132/.ya" + "ndex.cloud.apploadbalancer.v1.HttpRouteM" + "atch\022A\n\005route\030\002 \001(\01320.yandex.cloud.applo" + "adbalancer.v1.HttpRouteActionH\000\022C\n\010redir" + "ect\030\003 \001(\0132/.yandex.cloud.apploadbalancer" + ".v1.RedirectActionH\000\022P\n\017direct_response\030" + "\004 \001(\01325.yandex.cloud.apploadbalancer.v1." + "DirectResponseActionH\000B\016\n\006action\022\004\300\3011\001\"\364" + "\001\n\tGrpcRoute\022>\n\005match\030\001 \001(\0132/.yandex.clo" + "ud.apploadbalancer.v1.GrpcRouteMatch\022A\n\005" + "route\030\002 \001(\01320.yandex.cloud.apploadbalanc" + "er.v1.GrpcRouteActionH\000\022T\n\017status_respon" + "se\030\003 \001(\01329.yandex.cloud.apploadbalancer." + "v1.GrpcStatusResponseActionH\000B\016\n\006action\022" + "\004\300\3011\001\"a\n\016HttpRouteMatch\022\023\n\013http_method\030\001" + " \003(\t\022:\n\004path\030\002 \001(\0132,.yandex.cloud.apploa" + "dbalancer.v1.StringMatch\"L\n\016GrpcRouteMat" + "ch\022:\n\004fqmn\030\001 \001(\0132,.yandex.cloud.apploadb" + "alancer.v1.StringMatch\"b\n\013StringMatch\022\025\n" + "\013exact_match\030\001 \001(\tH\000\022\026\n\014prefix_match\030\002 \001" + "(\tH\000\022\025\n\013regex_match\030\003 \001(\tH\000B\r\n\005match\022\004\300\301" + "1\001\"\372\002\n\016RedirectAction\022\026\n\016replace_scheme\030" + "\001 \001(\t\022\024\n\014replace_host\030\002 \001(\t\022\024\n\014replace_p" + "ort\030\003 \001(\003\022\026\n\014replace_path\030\004 \001(\tH\000\022\030\n\016rep" + "lace_prefix\030\005 \001(\tH\000\022\024\n\014remove_query\030\006 \001(" + "\010\022[\n\rresponse_code\030\007 \001(\0162D.yandex.cloud." + "apploadbalancer.v1.RedirectAction.Redire" + "ctResponseCode\"w\n\024RedirectResponseCode\022\025" + "\n\021MOVED_PERMANENTLY\020\000\022\t\n\005FOUND\020\001\022\r\n\tSEE_" + "OTHER\020\002\022\026\n\022TEMPORARY_REDIRECT\020\003\022\026\n\022PERMA" + "NENT_REDIRECT\020\004B\006\n\004path\"k\n\024DirectRespons" + "eAction\022\033\n\006status\030\001 \001(\003B\013\372\3071\007100-599\0226\n\004" + "body\030\002 \001(\0132(.yandex.cloud.apploadbalance" + "r.v1.Payload\"\202\002\n\030GrpcStatusResponseActio" + "n\022P\n\006status\030\001 \001(\[email protected]" + "balancer.v1.GrpcStatusResponseAction.Sta" + "tus\"\223\001\n\006Status\022\006\n\002OK\020\000\022\024\n\020INVALID_ARGUME" + "NT\020\001\022\r\n\tNOT_FOUND\020\002\022\025\n\021PERMISSION_DENIED" + "\020\003\022\023\n\017UNAUTHENTICATED\020\004\022\021\n\rUNIMPLEMENTED" + "\020\005\022\014\n\010INTERNAL\020\006\022\017\n\013UNAVAILABLE\020\007\"\214\002\n\017Ht" + "tpRouteAction\022\036\n\020backend_group_id\030\001 \001(\tB" + "\004\350\3071\001\022*\n\007timeout\030\002 \001(\0132\031.google.protobuf" + ".Duration\022/\n\014idle_timeout\030\003 \001(\0132\031.google" + ".protobuf.Duration\022\026\n\014host_rewrite\030\004 \001(\t" + "H\000\022\033\n\021auto_host_rewrite\030\005 \001(\010H\000\022\026\n\016prefi" + "x_rewrite\030\006 \001(\t\022\025\n\rupgrade_types\030\007 \003(\tB\030" + "\n\026host_rewrite_specifier\"\341\001\n\017GrpcRouteAc" + "tion\022\036\n\020backend_group_id\030\001 \001(\tB\004\350\3071\001\022.\n\013" + "max_timeout\030\002 \001(\0132\031.google.protobuf.Dura" + "tion\022/\n\014idle_timeout\030\003 \001(\0132\031.google.prot" + "obuf.Duration\022\026\n\014host_rewrite\030\004 \001(\tH\000\022\033\n" + "\021auto_host_rewrite\030\005 \001(\010H\000B\030\n\026host_rewri" + "te_specifierBz\n#yandex.cloud.api.appload" + "balancer.v1ZSgithub.com/yandex-cloud/go-" + "genproto/yandex/cloud/apploadbalancer/v1" + ";apploadbalancerb\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.protobuf.DurationProto.getDescriptor(), yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.getDescriptor(), yandex.cloud.api.Validation.getDescriptor(), }); internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_VirtualHost_descriptor, new java.lang.String[] { "Name", "Authority", "Routes", "ModifyRequestHeaders", "ModifyResponseHeaders", "RouteOptions", }); internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_RouteOptions_descriptor, new java.lang.String[] { "ModifyRequestHeaders", "ModifyResponseHeaders", "Rbac", }); internal_static_yandex_cloud_apploadbalancer_v1_RBAC_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_yandex_cloud_apploadbalancer_v1_RBAC_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_RBAC_descriptor, new java.lang.String[] { "Action", "Principals", }); internal_static_yandex_cloud_apploadbalancer_v1_Principals_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_yandex_cloud_apploadbalancer_v1_Principals_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_Principals_descriptor, new java.lang.String[] { "AndPrincipals", }); internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_yandex_cloud_apploadbalancer_v1_Principal_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor, new java.lang.String[] { "Header", "RemoteIp", "Any", "Identifier", }); internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_descriptor = internal_static_yandex_cloud_apploadbalancer_v1_Principal_descriptor.getNestedTypes().get(0); internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_Principal_HeaderMatcher_descriptor, new java.lang.String[] { "Name", "Value", }); internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_HeaderModification_descriptor, new java.lang.String[] { "Name", "Append", "Replace", "Remove", "Rename", "Operation", }); internal_static_yandex_cloud_apploadbalancer_v1_Route_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_yandex_cloud_apploadbalancer_v1_Route_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_Route_descriptor, new java.lang.String[] { "Name", "Http", "Grpc", "RouteOptions", "Route", }); internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_descriptor = getDescriptor().getMessageTypes().get(7); internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_HttpRoute_descriptor, new java.lang.String[] { "Match", "Route", "Redirect", "DirectResponse", "Action", }); internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_descriptor = getDescriptor().getMessageTypes().get(8); internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_GrpcRoute_descriptor, new java.lang.String[] { "Match", "Route", "StatusResponse", "Action", }); internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_descriptor = getDescriptor().getMessageTypes().get(9); internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteMatch_descriptor, new java.lang.String[] { "HttpMethod", "Path", }); internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_descriptor = getDescriptor().getMessageTypes().get(10); internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteMatch_descriptor, new java.lang.String[] { "Fqmn", }); internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_descriptor = getDescriptor().getMessageTypes().get(11); internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_StringMatch_descriptor, new java.lang.String[] { "ExactMatch", "PrefixMatch", "RegexMatch", "Match", }); internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_descriptor = getDescriptor().getMessageTypes().get(12); internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_RedirectAction_descriptor, new java.lang.String[] { "ReplaceScheme", "ReplaceHost", "ReplacePort", "ReplacePath", "ReplacePrefix", "RemoveQuery", "ResponseCode", "Path", }); internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_descriptor = getDescriptor().getMessageTypes().get(13); internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_DirectResponseAction_descriptor, new java.lang.String[] { "Status", "Body", }); internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_descriptor = getDescriptor().getMessageTypes().get(14); internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_GrpcStatusResponseAction_descriptor, new java.lang.String[] { "Status", }); internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_descriptor = getDescriptor().getMessageTypes().get(15); internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_HttpRouteAction_descriptor, new java.lang.String[] { "BackendGroupId", "Timeout", "IdleTimeout", "HostRewrite", "AutoHostRewrite", "PrefixRewrite", "UpgradeTypes", "HostRewriteSpecifier", }); internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_descriptor = getDescriptor().getMessageTypes().get(16); internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_yandex_cloud_apploadbalancer_v1_GrpcRouteAction_descriptor, new java.lang.String[] { "BackendGroupId", "MaxTimeout", "IdleTimeout", "HostRewrite", "AutoHostRewrite", "HostRewriteSpecifier", }); com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(yandex.cloud.api.Validation.exactlyOne); registry.add(yandex.cloud.api.Validation.required); registry.add(yandex.cloud.api.Validation.size); registry.add(yandex.cloud.api.Validation.value); com.google.protobuf.Descriptors.FileDescriptor .internalUpdateFileDescriptor(descriptor, registry); com.google.protobuf.DurationProto.getDescriptor(); yandex.cloud.api.apploadbalancer.v1.PayloadOuterClass.getDescriptor(); yandex.cloud.api.Validation.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy