// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: clusterconnectivitymanagementv2.proto

package com.cloudera.thunderhead.service.clusterconnectivitymanagementv2;

public final class ClusterConnectivityManagementV2Proto {
  private ClusterConnectivityManagementV2Proto() {}
  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 CreateOrGetInvertingProxyRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * AccountID for which inverting-proxy should be provisioned.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    java.lang.String getAccountId();
    /**
     * <pre>
     * AccountID for which inverting-proxy should be provisioned.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    com.google.protobuf.ByteString
        getAccountIdBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest}
   */
  public static final class CreateOrGetInvertingProxyRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest)
      CreateOrGetInvertingProxyRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CreateOrGetInvertingProxyRequest.newBuilder() to construct.
    private CreateOrGetInvertingProxyRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private CreateOrGetInvertingProxyRequest() {
      accountId_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CreateOrGetInvertingProxyRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.Builder.class);
    }

    public static final int ACCOUNTID_FIELD_NUMBER = 1;
    private volatile java.lang.Object accountId_;
    /**
     * <pre>
     * AccountID for which inverting-proxy should be provisioned.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    @java.lang.Override
    public java.lang.String getAccountId() {
      java.lang.Object ref = accountId_;
      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();
        accountId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * AccountID for which inverting-proxy should be provisioned.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAccountIdBytes() {
      java.lang.Object ref = accountId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        accountId_ = 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(accountId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, accountId_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accountId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, accountId_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest) obj;

      if (!getAccountId()
          .equals(other.getAccountId())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + ACCOUNTID_FIELD_NUMBER;
      hash = (53 * hash) + getAccountId().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest 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 clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        accountId_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest(this);
        result.accountId_ = accountId_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest.getDefaultInstance()) return this;
        if (!other.getAccountId().isEmpty()) {
          accountId_ = other.accountId_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                accountId_ = input.readStringRequireUtf8();

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private java.lang.Object accountId_ = "";
      /**
       * <pre>
       * AccountID for which inverting-proxy should be provisioned.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The accountId.
       */
      public java.lang.String getAccountId() {
        java.lang.Object ref = accountId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          accountId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be provisioned.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The bytes for accountId.
       */
      public com.google.protobuf.ByteString
          getAccountIdBytes() {
        java.lang.Object ref = accountId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          accountId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be provisioned.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        accountId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be provisioned.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAccountId() {
        
        accountId_ = getDefaultInstance().getAccountId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be provisioned.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The bytes for accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        accountId_ = 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:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<CreateOrGetInvertingProxyRequest>
        PARSER = new com.google.protobuf.AbstractParser<CreateOrGetInvertingProxyRequest>() {
      @java.lang.Override
      public CreateOrGetInvertingProxyRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<CreateOrGetInvertingProxyRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<CreateOrGetInvertingProxyRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface CreateOrGetInvertingProxyResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * Inverting-proxy with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
     * @return Whether the invertingProxy field is set.
     */
    boolean hasInvertingProxy();
    /**
     * <pre>
     * Inverting-proxy with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
     * @return The invertingProxy.
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy getInvertingProxy();
    /**
     * <pre>
     * Inverting-proxy with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder getInvertingProxyOrBuilder();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse}
   */
  public static final class CreateOrGetInvertingProxyResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse)
      CreateOrGetInvertingProxyResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use CreateOrGetInvertingProxyResponse.newBuilder() to construct.
    private CreateOrGetInvertingProxyResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private CreateOrGetInvertingProxyResponse() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new CreateOrGetInvertingProxyResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.Builder.class);
    }

    public static final int INVERTINGPROXY_FIELD_NUMBER = 1;
    private com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy invertingProxy_;
    /**
     * <pre>
     * Inverting-proxy with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
     * @return Whether the invertingProxy field is set.
     */
    @java.lang.Override
    public boolean hasInvertingProxy() {
      return invertingProxy_ != null;
    }
    /**
     * <pre>
     * Inverting-proxy with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
     * @return The invertingProxy.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy getInvertingProxy() {
      return invertingProxy_ == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.getDefaultInstance() : invertingProxy_;
    }
    /**
     * <pre>
     * Inverting-proxy with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder getInvertingProxyOrBuilder() {
      return getInvertingProxy();
    }

    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 (invertingProxy_ != null) {
        output.writeMessage(1, getInvertingProxy());
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (invertingProxy_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getInvertingProxy());
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse) obj;

      if (hasInvertingProxy() != other.hasInvertingProxy()) return false;
      if (hasInvertingProxy()) {
        if (!getInvertingProxy()
            .equals(other.getInvertingProxy())) return false;
      }
      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasInvertingProxy()) {
        hash = (37 * hash) + INVERTINGPROXY_FIELD_NUMBER;
        hash = (53 * hash) + getInvertingProxy().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse 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 clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (invertingProxyBuilder_ == null) {
          invertingProxy_ = null;
        } else {
          invertingProxy_ = null;
          invertingProxyBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse(this);
        if (invertingProxyBuilder_ == null) {
          result.invertingProxy_ = invertingProxy_;
        } else {
          result.invertingProxy_ = invertingProxyBuilder_.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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse.getDefaultInstance()) return this;
        if (other.hasInvertingProxy()) {
          mergeInvertingProxy(other.getInvertingProxy());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                input.readMessage(
                    getInvertingProxyFieldBuilder().getBuilder(),
                    extensionRegistry);

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy invertingProxy_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder> invertingProxyBuilder_;
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       * @return Whether the invertingProxy field is set.
       */
      public boolean hasInvertingProxy() {
        return invertingProxyBuilder_ != null || invertingProxy_ != null;
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       * @return The invertingProxy.
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy getInvertingProxy() {
        if (invertingProxyBuilder_ == null) {
          return invertingProxy_ == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.getDefaultInstance() : invertingProxy_;
        } else {
          return invertingProxyBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      public Builder setInvertingProxy(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy value) {
        if (invertingProxyBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          invertingProxy_ = value;
          onChanged();
        } else {
          invertingProxyBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      public Builder setInvertingProxy(
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder builderForValue) {
        if (invertingProxyBuilder_ == null) {
          invertingProxy_ = builderForValue.build();
          onChanged();
        } else {
          invertingProxyBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      public Builder mergeInvertingProxy(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy value) {
        if (invertingProxyBuilder_ == null) {
          if (invertingProxy_ != null) {
            invertingProxy_ =
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.newBuilder(invertingProxy_).mergeFrom(value).buildPartial();
          } else {
            invertingProxy_ = value;
          }
          onChanged();
        } else {
          invertingProxyBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      public Builder clearInvertingProxy() {
        if (invertingProxyBuilder_ == null) {
          invertingProxy_ = null;
          onChanged();
        } else {
          invertingProxy_ = null;
          invertingProxyBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder getInvertingProxyBuilder() {
        
        onChanged();
        return getInvertingProxyFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder getInvertingProxyOrBuilder() {
        if (invertingProxyBuilder_ != null) {
          return invertingProxyBuilder_.getMessageOrBuilder();
        } else {
          return invertingProxy_ == null ?
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.getDefaultInstance() : invertingProxy_;
        }
      }
      /**
       * <pre>
       * Inverting-proxy with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy invertingProxy = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder> 
          getInvertingProxyFieldBuilder() {
        if (invertingProxyBuilder_ == null) {
          invertingProxyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder>(
                  getInvertingProxy(),
                  getParentForChildren(),
                  isClean());
          invertingProxy_ = null;
        }
        return invertingProxyBuilder_;
      }
      @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:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.CreateOrGetInvertingProxyResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<CreateOrGetInvertingProxyResponse>
        PARSER = new com.google.protobuf.AbstractParser<CreateOrGetInvertingProxyResponse>() {
      @java.lang.Override
      public CreateOrGetInvertingProxyResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<CreateOrGetInvertingProxyResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<CreateOrGetInvertingProxyResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.CreateOrGetInvertingProxyResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface RemoveInvertingProxyRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.RemoveInvertingProxyRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * AccountID for which inverting-proxy should be deleted.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    java.lang.String getAccountId();
    /**
     * <pre>
     * AccountID for which inverting-proxy should be deleted.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    com.google.protobuf.ByteString
        getAccountIdBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.RemoveInvertingProxyRequest}
   */
  public static final class RemoveInvertingProxyRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.RemoveInvertingProxyRequest)
      RemoveInvertingProxyRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use RemoveInvertingProxyRequest.newBuilder() to construct.
    private RemoveInvertingProxyRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private RemoveInvertingProxyRequest() {
      accountId_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new RemoveInvertingProxyRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.Builder.class);
    }

    public static final int ACCOUNTID_FIELD_NUMBER = 1;
    private volatile java.lang.Object accountId_;
    /**
     * <pre>
     * AccountID for which inverting-proxy should be deleted.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    @java.lang.Override
    public java.lang.String getAccountId() {
      java.lang.Object ref = accountId_;
      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();
        accountId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * AccountID for which inverting-proxy should be deleted.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAccountIdBytes() {
      java.lang.Object ref = accountId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        accountId_ = 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(accountId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, accountId_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accountId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, accountId_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest) obj;

      if (!getAccountId()
          .equals(other.getAccountId())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + ACCOUNTID_FIELD_NUMBER;
      hash = (53 * hash) + getAccountId().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest 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 clusterconnectivitymanagementv2.RemoveInvertingProxyRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.RemoveInvertingProxyRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        accountId_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest(this);
        result.accountId_ = accountId_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest.getDefaultInstance()) return this;
        if (!other.getAccountId().isEmpty()) {
          accountId_ = other.accountId_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                accountId_ = input.readStringRequireUtf8();

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private java.lang.Object accountId_ = "";
      /**
       * <pre>
       * AccountID for which inverting-proxy should be deleted.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The accountId.
       */
      public java.lang.String getAccountId() {
        java.lang.Object ref = accountId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          accountId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be deleted.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The bytes for accountId.
       */
      public com.google.protobuf.ByteString
          getAccountIdBytes() {
        java.lang.Object ref = accountId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          accountId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be deleted.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        accountId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be deleted.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAccountId() {
        
        accountId_ = getDefaultInstance().getAccountId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * AccountID for which inverting-proxy should be deleted.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The bytes for accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        accountId_ = 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:clusterconnectivitymanagementv2.RemoveInvertingProxyRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.RemoveInvertingProxyRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<RemoveInvertingProxyRequest>
        PARSER = new com.google.protobuf.AbstractParser<RemoveInvertingProxyRequest>() {
      @java.lang.Override
      public RemoveInvertingProxyRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<RemoveInvertingProxyRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<RemoveInvertingProxyRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface RemoveInvertingProxyResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.RemoveInvertingProxyResponse)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.RemoveInvertingProxyResponse}
   */
  public static final class RemoveInvertingProxyResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.RemoveInvertingProxyResponse)
      RemoveInvertingProxyResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use RemoveInvertingProxyResponse.newBuilder() to construct.
    private RemoveInvertingProxyResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private RemoveInvertingProxyResponse() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new RemoveInvertingProxyResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.Builder.class);
    }

    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 {
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse) obj;

      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse 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 clusterconnectivitymanagementv2.RemoveInvertingProxyResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.RemoveInvertingProxyResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse(this);
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse.getDefaultInstance()) return this;
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        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:clusterconnectivitymanagementv2.RemoveInvertingProxyResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.RemoveInvertingProxyResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<RemoveInvertingProxyResponse>
        PARSER = new com.google.protobuf.AbstractParser<RemoveInvertingProxyResponse>() {
      @java.lang.Override
      public RemoveInvertingProxyResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<RemoveInvertingProxyResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<RemoveInvertingProxyResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RemoveInvertingProxyResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface RegisterAgentRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.RegisterAgentRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * AccountID for which agent cert-key pair should be registered.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    java.lang.String getAccountId();
    /**
     * <pre>
     * AccountID for which agent cert-key pair should be registered.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    com.google.protobuf.ByteString
        getAccountIdBytes();

    /**
     * <pre>
     * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
     * Certificate will be created for this domain name.
     * </pre>
     *
     * <code>string domainName = 2;</code>
     * @return The domainName.
     */
    java.lang.String getDomainName();
    /**
     * <pre>
     * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
     * Certificate will be created for this domain name.
     * </pre>
     *
     * <code>string domainName = 2;</code>
     * @return The bytes for domainName.
     */
    com.google.protobuf.ByteString
        getDomainNameBytes();

    /**
     * <pre>
     * Key ID to identify the cluster uniquely.
     * This will be used to encipher private key.
     * </pre>
     *
     * <code>string keyId = 3;</code>
     * @return The keyId.
     */
    java.lang.String getKeyId();
    /**
     * <pre>
     * Key ID to identify the cluster uniquely.
     * This will be used to encipher private key.
     * </pre>
     *
     * <code>string keyId = 3;</code>
     * @return The bytes for keyId.
     */
    com.google.protobuf.ByteString
        getKeyIdBytes();

    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
     * part of registration implies that the provisioning service consents to the use this agent to
     * target backend services outside the host it is deployed on.
     * As part of future work, we intend to bring a dedicated pool of agents which would be shared
     * across the environment. Fos suce agents, we expect that environmentCrn would always be
     * supplied during registration.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The environmentCrn.
     */
    java.lang.String getEnvironmentCrn();
    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
     * part of registration implies that the provisioning service consents to the use this agent to
     * target backend services outside the host it is deployed on.
     * As part of future work, we intend to bring a dedicated pool of agents which would be shared
     * across the environment. Fos suce agents, we expect that environmentCrn would always be
     * supplied during registration.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The bytes for environmentCrn.
     */
    com.google.protobuf.ByteString
        getEnvironmentCrnBytes();

    /**
     * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
     * @return Whether the aes128Parameters field is set.
     */
    boolean hasAes128Parameters();
    /**
     * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
     * @return The aes128Parameters.
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters getAes128Parameters();
    /**
     * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder getAes128ParametersOrBuilder();

    /**
     * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
     * @return Whether the aes256Parameters field is set.
     */
    boolean hasAes256Parameters();
    /**
     * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
     * @return The aes256Parameters.
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters getAes256Parameters();
    /**
     * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder getAes256ParametersOrBuilder();

    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.FilterOneofCase getFilterOneofCase();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.RegisterAgentRequest}
   */
  public static final class RegisterAgentRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.RegisterAgentRequest)
      RegisterAgentRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use RegisterAgentRequest.newBuilder() to construct.
    private RegisterAgentRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private RegisterAgentRequest() {
      accountId_ = "";
      domainName_ = "";
      keyId_ = "";
      environmentCrn_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new RegisterAgentRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.Builder.class);
    }

    private int filterOneofCase_ = 0;
    private java.lang.Object filterOneof_;
    public enum FilterOneofCase
        implements com.google.protobuf.Internal.EnumLite,
            com.google.protobuf.AbstractMessage.InternalOneOfEnum {
      AES128PARAMETERS(5),
      AES256PARAMETERS(6),
      FILTERONEOF_NOT_SET(0);
      private final int value;
      private FilterOneofCase(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 FilterOneofCase valueOf(int value) {
        return forNumber(value);
      }

      public static FilterOneofCase forNumber(int value) {
        switch (value) {
          case 5: return AES128PARAMETERS;
          case 6: return AES256PARAMETERS;
          case 0: return FILTERONEOF_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public FilterOneofCase
    getFilterOneofCase() {
      return FilterOneofCase.forNumber(
          filterOneofCase_);
    }

    public static final int ACCOUNTID_FIELD_NUMBER = 1;
    private volatile java.lang.Object accountId_;
    /**
     * <pre>
     * AccountID for which agent cert-key pair should be registered.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    @java.lang.Override
    public java.lang.String getAccountId() {
      java.lang.Object ref = accountId_;
      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();
        accountId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * AccountID for which agent cert-key pair should be registered.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAccountIdBytes() {
      java.lang.Object ref = accountId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        accountId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int DOMAINNAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object domainName_;
    /**
     * <pre>
     * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
     * Certificate will be created for this domain name.
     * </pre>
     *
     * <code>string domainName = 2;</code>
     * @return The domainName.
     */
    @java.lang.Override
    public java.lang.String getDomainName() {
      java.lang.Object ref = domainName_;
      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();
        domainName_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
     * Certificate will be created for this domain name.
     * </pre>
     *
     * <code>string domainName = 2;</code>
     * @return The bytes for domainName.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getDomainNameBytes() {
      java.lang.Object ref = domainName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        domainName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int KEYID_FIELD_NUMBER = 3;
    private volatile java.lang.Object keyId_;
    /**
     * <pre>
     * Key ID to identify the cluster uniquely.
     * This will be used to encipher private key.
     * </pre>
     *
     * <code>string keyId = 3;</code>
     * @return The keyId.
     */
    @java.lang.Override
    public java.lang.String getKeyId() {
      java.lang.Object ref = keyId_;
      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();
        keyId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Key ID to identify the cluster uniquely.
     * This will be used to encipher private key.
     * </pre>
     *
     * <code>string keyId = 3;</code>
     * @return The bytes for keyId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getKeyIdBytes() {
      java.lang.Object ref = keyId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        keyId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENVIRONMENTCRN_FIELD_NUMBER = 4;
    private volatile java.lang.Object environmentCrn_;
    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
     * part of registration implies that the provisioning service consents to the use this agent to
     * target backend services outside the host it is deployed on.
     * As part of future work, we intend to bring a dedicated pool of agents which would be shared
     * across the environment. Fos suce agents, we expect that environmentCrn would always be
     * supplied during registration.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The environmentCrn.
     */
    @java.lang.Override
    public java.lang.String getEnvironmentCrn() {
      java.lang.Object ref = environmentCrn_;
      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();
        environmentCrn_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
     * part of registration implies that the provisioning service consents to the use this agent to
     * target backend services outside the host it is deployed on.
     * As part of future work, we intend to bring a dedicated pool of agents which would be shared
     * across the environment. Fos suce agents, we expect that environmentCrn would always be
     * supplied during registration.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The bytes for environmentCrn.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getEnvironmentCrnBytes() {
      java.lang.Object ref = environmentCrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        environmentCrn_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int AES128PARAMETERS_FIELD_NUMBER = 5;
    /**
     * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
     * @return Whether the aes128Parameters field is set.
     */
    @java.lang.Override
    public boolean hasAes128Parameters() {
      return filterOneofCase_ == 5;
    }
    /**
     * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
     * @return The aes128Parameters.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters getAes128Parameters() {
      if (filterOneofCase_ == 5) {
         return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_;
      }
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
    }
    /**
     * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder getAes128ParametersOrBuilder() {
      if (filterOneofCase_ == 5) {
         return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_;
      }
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
    }

    public static final int AES256PARAMETERS_FIELD_NUMBER = 6;
    /**
     * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
     * @return Whether the aes256Parameters field is set.
     */
    @java.lang.Override
    public boolean hasAes256Parameters() {
      return filterOneofCase_ == 6;
    }
    /**
     * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
     * @return The aes256Parameters.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters getAes256Parameters() {
      if (filterOneofCase_ == 6) {
         return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_;
      }
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance();
    }
    /**
     * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder getAes256ParametersOrBuilder() {
      if (filterOneofCase_ == 6) {
         return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_;
      }
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.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 (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accountId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, accountId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(domainName_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, domainName_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(keyId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, keyId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentCrn_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, environmentCrn_);
      }
      if (filterOneofCase_ == 5) {
        output.writeMessage(5, (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_);
      }
      if (filterOneofCase_ == 6) {
        output.writeMessage(6, (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accountId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, accountId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(domainName_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, domainName_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(keyId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, keyId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentCrn_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, environmentCrn_);
      }
      if (filterOneofCase_ == 5) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_);
      }
      if (filterOneofCase_ == 6) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest) obj;

      if (!getAccountId()
          .equals(other.getAccountId())) return false;
      if (!getDomainName()
          .equals(other.getDomainName())) return false;
      if (!getKeyId()
          .equals(other.getKeyId())) return false;
      if (!getEnvironmentCrn()
          .equals(other.getEnvironmentCrn())) return false;
      if (!getFilterOneofCase().equals(other.getFilterOneofCase())) return false;
      switch (filterOneofCase_) {
        case 5:
          if (!getAes128Parameters()
              .equals(other.getAes128Parameters())) return false;
          break;
        case 6:
          if (!getAes256Parameters()
              .equals(other.getAes256Parameters())) return false;
          break;
        case 0:
        default:
      }
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + ACCOUNTID_FIELD_NUMBER;
      hash = (53 * hash) + getAccountId().hashCode();
      hash = (37 * hash) + DOMAINNAME_FIELD_NUMBER;
      hash = (53 * hash) + getDomainName().hashCode();
      hash = (37 * hash) + KEYID_FIELD_NUMBER;
      hash = (53 * hash) + getKeyId().hashCode();
      hash = (37 * hash) + ENVIRONMENTCRN_FIELD_NUMBER;
      hash = (53 * hash) + getEnvironmentCrn().hashCode();
      switch (filterOneofCase_) {
        case 5:
          hash = (37 * hash) + AES128PARAMETERS_FIELD_NUMBER;
          hash = (53 * hash) + getAes128Parameters().hashCode();
          break;
        case 6:
          hash = (37 * hash) + AES256PARAMETERS_FIELD_NUMBER;
          hash = (53 * hash) + getAes256Parameters().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest 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 clusterconnectivitymanagementv2.RegisterAgentRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.RegisterAgentRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        accountId_ = "";

        domainName_ = "";

        keyId_ = "";

        environmentCrn_ = "";

        if (aes128ParametersBuilder_ != null) {
          aes128ParametersBuilder_.clear();
        }
        if (aes256ParametersBuilder_ != null) {
          aes256ParametersBuilder_.clear();
        }
        filterOneofCase_ = 0;
        filterOneof_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest(this);
        result.accountId_ = accountId_;
        result.domainName_ = domainName_;
        result.keyId_ = keyId_;
        result.environmentCrn_ = environmentCrn_;
        if (filterOneofCase_ == 5) {
          if (aes128ParametersBuilder_ == null) {
            result.filterOneof_ = filterOneof_;
          } else {
            result.filterOneof_ = aes128ParametersBuilder_.build();
          }
        }
        if (filterOneofCase_ == 6) {
          if (aes256ParametersBuilder_ == null) {
            result.filterOneof_ = filterOneof_;
          } else {
            result.filterOneof_ = aes256ParametersBuilder_.build();
          }
        }
        result.filterOneofCase_ = filterOneofCase_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest.getDefaultInstance()) return this;
        if (!other.getAccountId().isEmpty()) {
          accountId_ = other.accountId_;
          onChanged();
        }
        if (!other.getDomainName().isEmpty()) {
          domainName_ = other.domainName_;
          onChanged();
        }
        if (!other.getKeyId().isEmpty()) {
          keyId_ = other.keyId_;
          onChanged();
        }
        if (!other.getEnvironmentCrn().isEmpty()) {
          environmentCrn_ = other.environmentCrn_;
          onChanged();
        }
        switch (other.getFilterOneofCase()) {
          case AES128PARAMETERS: {
            mergeAes128Parameters(other.getAes128Parameters());
            break;
          }
          case AES256PARAMETERS: {
            mergeAes256Parameters(other.getAes256Parameters());
            break;
          }
          case FILTERONEOF_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                accountId_ = input.readStringRequireUtf8();

                break;
              } // case 10
              case 18: {
                domainName_ = input.readStringRequireUtf8();

                break;
              } // case 18
              case 26: {
                keyId_ = input.readStringRequireUtf8();

                break;
              } // case 26
              case 34: {
                environmentCrn_ = input.readStringRequireUtf8();

                break;
              } // case 34
              case 42: {
                input.readMessage(
                    getAes128ParametersFieldBuilder().getBuilder(),
                    extensionRegistry);
                filterOneofCase_ = 5;
                break;
              } // case 42
              case 50: {
                input.readMessage(
                    getAes256ParametersFieldBuilder().getBuilder(),
                    extensionRegistry);
                filterOneofCase_ = 6;
                break;
              } // case 50
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }
      private int filterOneofCase_ = 0;
      private java.lang.Object filterOneof_;
      public FilterOneofCase
          getFilterOneofCase() {
        return FilterOneofCase.forNumber(
            filterOneofCase_);
      }

      public Builder clearFilterOneof() {
        filterOneofCase_ = 0;
        filterOneof_ = null;
        onChanged();
        return this;
      }


      private java.lang.Object accountId_ = "";
      /**
       * <pre>
       * AccountID for which agent cert-key pair should be registered.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The accountId.
       */
      public java.lang.String getAccountId() {
        java.lang.Object ref = accountId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          accountId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * AccountID for which agent cert-key pair should be registered.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The bytes for accountId.
       */
      public com.google.protobuf.ByteString
          getAccountIdBytes() {
        java.lang.Object ref = accountId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          accountId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * AccountID for which agent cert-key pair should be registered.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        accountId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * AccountID for which agent cert-key pair should be registered.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAccountId() {
        
        accountId_ = getDefaultInstance().getAccountId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * AccountID for which agent cert-key pair should be registered.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The bytes for accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        accountId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object domainName_ = "";
      /**
       * <pre>
       * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
       * Certificate will be created for this domain name.
       * </pre>
       *
       * <code>string domainName = 2;</code>
       * @return The domainName.
       */
      public java.lang.String getDomainName() {
        java.lang.Object ref = domainName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          domainName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
       * Certificate will be created for this domain name.
       * </pre>
       *
       * <code>string domainName = 2;</code>
       * @return The bytes for domainName.
       */
      public com.google.protobuf.ByteString
          getDomainNameBytes() {
        java.lang.Object ref = domainName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          domainName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
       * Certificate will be created for this domain name.
       * </pre>
       *
       * <code>string domainName = 2;</code>
       * @param value The domainName to set.
       * @return This builder for chaining.
       */
      public Builder setDomainName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        domainName_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
       * Certificate will be created for this domain name.
       * </pre>
       *
       * <code>string domainName = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearDomainName() {
        
        domainName_ = getDefaultInstance().getDomainName();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Domain name of the workload cluster needs to be provided by provisioner services(e.g. CB)
       * Certificate will be created for this domain name.
       * </pre>
       *
       * <code>string domainName = 2;</code>
       * @param value The bytes for domainName to set.
       * @return This builder for chaining.
       */
      public Builder setDomainNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        domainName_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object keyId_ = "";
      /**
       * <pre>
       * Key ID to identify the cluster uniquely.
       * This will be used to encipher private key.
       * </pre>
       *
       * <code>string keyId = 3;</code>
       * @return The keyId.
       */
      public java.lang.String getKeyId() {
        java.lang.Object ref = keyId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          keyId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Key ID to identify the cluster uniquely.
       * This will be used to encipher private key.
       * </pre>
       *
       * <code>string keyId = 3;</code>
       * @return The bytes for keyId.
       */
      public com.google.protobuf.ByteString
          getKeyIdBytes() {
        java.lang.Object ref = keyId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          keyId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Key ID to identify the cluster uniquely.
       * This will be used to encipher private key.
       * </pre>
       *
       * <code>string keyId = 3;</code>
       * @param value The keyId to set.
       * @return This builder for chaining.
       */
      public Builder setKeyId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        keyId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Key ID to identify the cluster uniquely.
       * This will be used to encipher private key.
       * </pre>
       *
       * <code>string keyId = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearKeyId() {
        
        keyId_ = getDefaultInstance().getKeyId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Key ID to identify the cluster uniquely.
       * This will be used to encipher private key.
       * </pre>
       *
       * <code>string keyId = 3;</code>
       * @param value The bytes for keyId to set.
       * @return This builder for chaining.
       */
      public Builder setKeyIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        keyId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object environmentCrn_ = "";
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
       * part of registration implies that the provisioning service consents to the use this agent to
       * target backend services outside the host it is deployed on.
       * As part of future work, we intend to bring a dedicated pool of agents which would be shared
       * across the environment. Fos suce agents, we expect that environmentCrn would always be
       * supplied during registration.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return The environmentCrn.
       */
      public java.lang.String getEnvironmentCrn() {
        java.lang.Object ref = environmentCrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          environmentCrn_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
       * part of registration implies that the provisioning service consents to the use this agent to
       * target backend services outside the host it is deployed on.
       * As part of future work, we intend to bring a dedicated pool of agents which would be shared
       * across the environment. Fos suce agents, we expect that environmentCrn would always be
       * supplied during registration.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return The bytes for environmentCrn.
       */
      public com.google.protobuf.ByteString
          getEnvironmentCrnBytes() {
        java.lang.Object ref = environmentCrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          environmentCrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
       * part of registration implies that the provisioning service consents to the use this agent to
       * target backend services outside the host it is deployed on.
       * As part of future work, we intend to bring a dedicated pool of agents which would be shared
       * across the environment. Fos suce agents, we expect that environmentCrn would always be
       * supplied during registration.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @param value The environmentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setEnvironmentCrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        environmentCrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
       * part of registration implies that the provisioning service consents to the use this agent to
       * target backend services outside the host it is deployed on.
       * As part of future work, we intend to bring a dedicated pool of agents which would be shared
       * across the environment. Fos suce agents, we expect that environmentCrn would always be
       * supplied during registration.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearEnvironmentCrn() {
        
        environmentCrn_ = getDefaultInstance().getEnvironmentCrn();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Passing the environmentCrn as
       * part of registration implies that the provisioning service consents to the use this agent to
       * target backend services outside the host it is deployed on.
       * As part of future work, we intend to bring a dedicated pool of agents which would be shared
       * across the environment. Fos suce agents, we expect that environmentCrn would always be
       * supplied during registration.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @param value The bytes for environmentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setEnvironmentCrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        environmentCrn_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder> aes128ParametersBuilder_;
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       * @return Whether the aes128Parameters field is set.
       */
      @java.lang.Override
      public boolean hasAes128Parameters() {
        return filterOneofCase_ == 5;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       * @return The aes128Parameters.
       */
      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters getAes128Parameters() {
        if (aes128ParametersBuilder_ == null) {
          if (filterOneofCase_ == 5) {
            return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_;
          }
          return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
        } else {
          if (filterOneofCase_ == 5) {
            return aes128ParametersBuilder_.getMessage();
          }
          return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
        }
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      public Builder setAes128Parameters(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters value) {
        if (aes128ParametersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          filterOneof_ = value;
          onChanged();
        } else {
          aes128ParametersBuilder_.setMessage(value);
        }
        filterOneofCase_ = 5;
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      public Builder setAes128Parameters(
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder builderForValue) {
        if (aes128ParametersBuilder_ == null) {
          filterOneof_ = builderForValue.build();
          onChanged();
        } else {
          aes128ParametersBuilder_.setMessage(builderForValue.build());
        }
        filterOneofCase_ = 5;
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      public Builder mergeAes128Parameters(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters value) {
        if (aes128ParametersBuilder_ == null) {
          if (filterOneofCase_ == 5 &&
              filterOneof_ != com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance()) {
            filterOneof_ = com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.newBuilder((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_)
                .mergeFrom(value).buildPartial();
          } else {
            filterOneof_ = value;
          }
          onChanged();
        } else {
          if (filterOneofCase_ == 5) {
            aes128ParametersBuilder_.mergeFrom(value);
          } else {
            aes128ParametersBuilder_.setMessage(value);
          }
        }
        filterOneofCase_ = 5;
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      public Builder clearAes128Parameters() {
        if (aes128ParametersBuilder_ == null) {
          if (filterOneofCase_ == 5) {
            filterOneofCase_ = 0;
            filterOneof_ = null;
            onChanged();
          }
        } else {
          if (filterOneofCase_ == 5) {
            filterOneofCase_ = 0;
            filterOneof_ = null;
          }
          aes128ParametersBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder getAes128ParametersBuilder() {
        return getAes128ParametersFieldBuilder().getBuilder();
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder getAes128ParametersOrBuilder() {
        if ((filterOneofCase_ == 5) && (aes128ParametersBuilder_ != null)) {
          return aes128ParametersBuilder_.getMessageOrBuilder();
        } else {
          if (filterOneofCase_ == 5) {
            return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_;
          }
          return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
        }
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES128Parameters aes128Parameters = 5;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder> 
          getAes128ParametersFieldBuilder() {
        if (aes128ParametersBuilder_ == null) {
          if (!(filterOneofCase_ == 5)) {
            filterOneof_ = com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
          }
          aes128ParametersBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder>(
                  (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) filterOneof_,
                  getParentForChildren(),
                  isClean());
          filterOneof_ = null;
        }
        filterOneofCase_ = 5;
        onChanged();;
        return aes128ParametersBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder> aes256ParametersBuilder_;
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       * @return Whether the aes256Parameters field is set.
       */
      @java.lang.Override
      public boolean hasAes256Parameters() {
        return filterOneofCase_ == 6;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       * @return The aes256Parameters.
       */
      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters getAes256Parameters() {
        if (aes256ParametersBuilder_ == null) {
          if (filterOneofCase_ == 6) {
            return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_;
          }
          return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance();
        } else {
          if (filterOneofCase_ == 6) {
            return aes256ParametersBuilder_.getMessage();
          }
          return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance();
        }
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      public Builder setAes256Parameters(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters value) {
        if (aes256ParametersBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          filterOneof_ = value;
          onChanged();
        } else {
          aes256ParametersBuilder_.setMessage(value);
        }
        filterOneofCase_ = 6;
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      public Builder setAes256Parameters(
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder builderForValue) {
        if (aes256ParametersBuilder_ == null) {
          filterOneof_ = builderForValue.build();
          onChanged();
        } else {
          aes256ParametersBuilder_.setMessage(builderForValue.build());
        }
        filterOneofCase_ = 6;
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      public Builder mergeAes256Parameters(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters value) {
        if (aes256ParametersBuilder_ == null) {
          if (filterOneofCase_ == 6 &&
              filterOneof_ != com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance()) {
            filterOneof_ = com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.newBuilder((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_)
                .mergeFrom(value).buildPartial();
          } else {
            filterOneof_ = value;
          }
          onChanged();
        } else {
          if (filterOneofCase_ == 6) {
            aes256ParametersBuilder_.mergeFrom(value);
          } else {
            aes256ParametersBuilder_.setMessage(value);
          }
        }
        filterOneofCase_ = 6;
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      public Builder clearAes256Parameters() {
        if (aes256ParametersBuilder_ == null) {
          if (filterOneofCase_ == 6) {
            filterOneofCase_ = 0;
            filterOneof_ = null;
            onChanged();
          }
        } else {
          if (filterOneofCase_ == 6) {
            filterOneofCase_ = 0;
            filterOneof_ = null;
          }
          aes256ParametersBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder getAes256ParametersBuilder() {
        return getAes256ParametersFieldBuilder().getBuilder();
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder getAes256ParametersOrBuilder() {
        if ((filterOneofCase_ == 6) && (aes256ParametersBuilder_ != null)) {
          return aes256ParametersBuilder_.getMessageOrBuilder();
        } else {
          if (filterOneofCase_ == 6) {
            return (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_;
          }
          return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance();
        }
      }
      /**
       * <code>.clusterconnectivitymanagementv2.AES256Parameters aes256Parameters = 6;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder> 
          getAes256ParametersFieldBuilder() {
        if (aes256ParametersBuilder_ == null) {
          if (!(filterOneofCase_ == 6)) {
            filterOneof_ = com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance();
          }
          aes256ParametersBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder>(
                  (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) filterOneof_,
                  getParentForChildren(),
                  isClean());
          filterOneof_ = null;
        }
        filterOneofCase_ = 6;
        onChanged();;
        return aes256ParametersBuilder_;
      }
      @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:clusterconnectivitymanagementv2.RegisterAgentRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.RegisterAgentRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<RegisterAgentRequest>
        PARSER = new com.google.protobuf.AbstractParser<RegisterAgentRequest>() {
      @java.lang.Override
      public RegisterAgentRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<RegisterAgentRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<RegisterAgentRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface AES128ParametersOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.AES128Parameters)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.AES128Parameters}
   */
  public static final class AES128Parameters extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.AES128Parameters)
      AES128ParametersOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use AES128Parameters.newBuilder() to construct.
    private AES128Parameters(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private AES128Parameters() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new AES128Parameters();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES128Parameters_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES128Parameters_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder.class);
    }

    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 {
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) obj;

      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters 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 clusterconnectivitymanagementv2.AES128Parameters}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.AES128Parameters)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128ParametersOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES128Parameters_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES128Parameters_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES128Parameters_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters(this);
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters.getDefaultInstance()) return this;
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        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:clusterconnectivitymanagementv2.AES128Parameters)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.AES128Parameters)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<AES128Parameters>
        PARSER = new com.google.protobuf.AbstractParser<AES128Parameters>() {
      @java.lang.Override
      public AES128Parameters parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<AES128Parameters> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<AES128Parameters> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES128Parameters getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface AES256ParametersOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.AES256Parameters)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>string hmacKey = 1;</code>
     * @return The hmacKey.
     */
    java.lang.String getHmacKey();
    /**
     * <code>string hmacKey = 1;</code>
     * @return The bytes for hmacKey.
     */
    com.google.protobuf.ByteString
        getHmacKeyBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.AES256Parameters}
   */
  public static final class AES256Parameters extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.AES256Parameters)
      AES256ParametersOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use AES256Parameters.newBuilder() to construct.
    private AES256Parameters(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private AES256Parameters() {
      hmacKey_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new AES256Parameters();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES256Parameters_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES256Parameters_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder.class);
    }

    public static final int HMACKEY_FIELD_NUMBER = 1;
    private volatile java.lang.Object hmacKey_;
    /**
     * <code>string hmacKey = 1;</code>
     * @return The hmacKey.
     */
    @java.lang.Override
    public java.lang.String getHmacKey() {
      java.lang.Object ref = hmacKey_;
      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();
        hmacKey_ = s;
        return s;
      }
    }
    /**
     * <code>string hmacKey = 1;</code>
     * @return The bytes for hmacKey.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getHmacKeyBytes() {
      java.lang.Object ref = hmacKey_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        hmacKey_ = 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(hmacKey_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, hmacKey_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hmacKey_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, hmacKey_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) obj;

      if (!getHmacKey()
          .equals(other.getHmacKey())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + HMACKEY_FIELD_NUMBER;
      hash = (53 * hash) + getHmacKey().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters 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 clusterconnectivitymanagementv2.AES256Parameters}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.AES256Parameters)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256ParametersOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES256Parameters_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES256Parameters_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        hmacKey_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_AES256Parameters_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters(this);
        result.hmacKey_ = hmacKey_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters.getDefaultInstance()) return this;
        if (!other.getHmacKey().isEmpty()) {
          hmacKey_ = other.hmacKey_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                hmacKey_ = input.readStringRequireUtf8();

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private java.lang.Object hmacKey_ = "";
      /**
       * <code>string hmacKey = 1;</code>
       * @return The hmacKey.
       */
      public java.lang.String getHmacKey() {
        java.lang.Object ref = hmacKey_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          hmacKey_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string hmacKey = 1;</code>
       * @return The bytes for hmacKey.
       */
      public com.google.protobuf.ByteString
          getHmacKeyBytes() {
        java.lang.Object ref = hmacKey_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          hmacKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string hmacKey = 1;</code>
       * @param value The hmacKey to set.
       * @return This builder for chaining.
       */
      public Builder setHmacKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        hmacKey_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string hmacKey = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearHmacKey() {
        
        hmacKey_ = getDefaultInstance().getHmacKey();
        onChanged();
        return this;
      }
      /**
       * <code>string hmacKey = 1;</code>
       * @param value The bytes for hmacKey to set.
       * @return This builder for chaining.
       */
      public Builder setHmacKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        hmacKey_ = 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:clusterconnectivitymanagementv2.AES256Parameters)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.AES256Parameters)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<AES256Parameters>
        PARSER = new com.google.protobuf.AbstractParser<AES256Parameters>() {
      @java.lang.Override
      public AES256Parameters parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<AES256Parameters> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<AES256Parameters> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.AES256Parameters getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface RegisterAgentResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.RegisterAgentResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * Inverting proxy agent with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return Whether the invertingProxyAgent field is set.
     */
    boolean hasInvertingProxyAgent();
    /**
     * <pre>
     * Inverting proxy agent with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return The invertingProxyAgent.
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getInvertingProxyAgent();
    /**
     * <pre>
     * Inverting proxy agent with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getInvertingProxyAgentOrBuilder();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.RegisterAgentResponse}
   */
  public static final class RegisterAgentResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.RegisterAgentResponse)
      RegisterAgentResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use RegisterAgentResponse.newBuilder() to construct.
    private RegisterAgentResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private RegisterAgentResponse() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new RegisterAgentResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.Builder.class);
    }

    public static final int INVERTINGPROXYAGENT_FIELD_NUMBER = 1;
    private com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent invertingProxyAgent_;
    /**
     * <pre>
     * Inverting proxy agent with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return Whether the invertingProxyAgent field is set.
     */
    @java.lang.Override
    public boolean hasInvertingProxyAgent() {
      return invertingProxyAgent_ != null;
    }
    /**
     * <pre>
     * Inverting proxy agent with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return The invertingProxyAgent.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getInvertingProxyAgent() {
      return invertingProxyAgent_ == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance() : invertingProxyAgent_;
    }
    /**
     * <pre>
     * Inverting proxy agent with required fields.
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getInvertingProxyAgentOrBuilder() {
      return getInvertingProxyAgent();
    }

    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 (invertingProxyAgent_ != null) {
        output.writeMessage(1, getInvertingProxyAgent());
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (invertingProxyAgent_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getInvertingProxyAgent());
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse) obj;

      if (hasInvertingProxyAgent() != other.hasInvertingProxyAgent()) return false;
      if (hasInvertingProxyAgent()) {
        if (!getInvertingProxyAgent()
            .equals(other.getInvertingProxyAgent())) return false;
      }
      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasInvertingProxyAgent()) {
        hash = (37 * hash) + INVERTINGPROXYAGENT_FIELD_NUMBER;
        hash = (53 * hash) + getInvertingProxyAgent().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse 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 clusterconnectivitymanagementv2.RegisterAgentResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.RegisterAgentResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgent_ = null;
        } else {
          invertingProxyAgent_ = null;
          invertingProxyAgentBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse(this);
        if (invertingProxyAgentBuilder_ == null) {
          result.invertingProxyAgent_ = invertingProxyAgent_;
        } else {
          result.invertingProxyAgent_ = invertingProxyAgentBuilder_.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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse.getDefaultInstance()) return this;
        if (other.hasInvertingProxyAgent()) {
          mergeInvertingProxyAgent(other.getInvertingProxyAgent());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                input.readMessage(
                    getInvertingProxyAgentFieldBuilder().getBuilder(),
                    extensionRegistry);

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent invertingProxyAgent_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> invertingProxyAgentBuilder_;
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       * @return Whether the invertingProxyAgent field is set.
       */
      public boolean hasInvertingProxyAgent() {
        return invertingProxyAgentBuilder_ != null || invertingProxyAgent_ != null;
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       * @return The invertingProxyAgent.
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getInvertingProxyAgent() {
        if (invertingProxyAgentBuilder_ == null) {
          return invertingProxyAgent_ == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance() : invertingProxyAgent_;
        } else {
          return invertingProxyAgentBuilder_.getMessage();
        }
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder setInvertingProxyAgent(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (invertingProxyAgentBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          invertingProxyAgent_ = value;
          onChanged();
        } else {
          invertingProxyAgentBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder setInvertingProxyAgent(
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder builderForValue) {
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgent_ = builderForValue.build();
          onChanged();
        } else {
          invertingProxyAgentBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder mergeInvertingProxyAgent(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (invertingProxyAgentBuilder_ == null) {
          if (invertingProxyAgent_ != null) {
            invertingProxyAgent_ =
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.newBuilder(invertingProxyAgent_).mergeFrom(value).buildPartial();
          } else {
            invertingProxyAgent_ = value;
          }
          onChanged();
        } else {
          invertingProxyAgentBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder clearInvertingProxyAgent() {
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgent_ = null;
          onChanged();
        } else {
          invertingProxyAgent_ = null;
          invertingProxyAgentBuilder_ = null;
        }

        return this;
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder getInvertingProxyAgentBuilder() {
        
        onChanged();
        return getInvertingProxyAgentFieldBuilder().getBuilder();
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getInvertingProxyAgentOrBuilder() {
        if (invertingProxyAgentBuilder_ != null) {
          return invertingProxyAgentBuilder_.getMessageOrBuilder();
        } else {
          return invertingProxyAgent_ == null ?
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance() : invertingProxyAgent_;
        }
      }
      /**
       * <pre>
       * Inverting proxy agent with required fields.
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> 
          getInvertingProxyAgentFieldBuilder() {
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder>(
                  getInvertingProxyAgent(),
                  getParentForChildren(),
                  isClean());
          invertingProxyAgent_ = null;
        }
        return invertingProxyAgentBuilder_;
      }
      @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:clusterconnectivitymanagementv2.RegisterAgentResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.RegisterAgentResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<RegisterAgentResponse>
        PARSER = new com.google.protobuf.AbstractParser<RegisterAgentResponse>() {
      @java.lang.Override
      public RegisterAgentResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<RegisterAgentResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<RegisterAgentResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RegisterAgentResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface UnregisterAgentRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.UnregisterAgentRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The agentCrn.
     */
    java.lang.String getAgentCrn();
    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The bytes for agentCrn.
     */
    com.google.protobuf.ByteString
        getAgentCrnBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.UnregisterAgentRequest}
   */
  public static final class UnregisterAgentRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.UnregisterAgentRequest)
      UnregisterAgentRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UnregisterAgentRequest.newBuilder() to construct.
    private UnregisterAgentRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private UnregisterAgentRequest() {
      agentCrn_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new UnregisterAgentRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.Builder.class);
    }

    public static final int AGENTCRN_FIELD_NUMBER = 1;
    private volatile java.lang.Object agentCrn_;
    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The agentCrn.
     */
    @java.lang.Override
    public java.lang.String getAgentCrn() {
      java.lang.Object ref = agentCrn_;
      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();
        agentCrn_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The bytes for agentCrn.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAgentCrnBytes() {
      java.lang.Object ref = agentCrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        agentCrn_ = 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(agentCrn_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, agentCrn_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(agentCrn_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, agentCrn_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest) obj;

      if (!getAgentCrn()
          .equals(other.getAgentCrn())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + AGENTCRN_FIELD_NUMBER;
      hash = (53 * hash) + getAgentCrn().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest 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 clusterconnectivitymanagementv2.UnregisterAgentRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.UnregisterAgentRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        agentCrn_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest(this);
        result.agentCrn_ = agentCrn_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest.getDefaultInstance()) return this;
        if (!other.getAgentCrn().isEmpty()) {
          agentCrn_ = other.agentCrn_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                agentCrn_ = input.readStringRequireUtf8();

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private java.lang.Object agentCrn_ = "";
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return The agentCrn.
       */
      public java.lang.String getAgentCrn() {
        java.lang.Object ref = agentCrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          agentCrn_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return The bytes for agentCrn.
       */
      public com.google.protobuf.ByteString
          getAgentCrnBytes() {
        java.lang.Object ref = agentCrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          agentCrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @param value The agentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setAgentCrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        agentCrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAgentCrn() {
        
        agentCrn_ = getDefaultInstance().getAgentCrn();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @param value The bytes for agentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setAgentCrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        agentCrn_ = 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:clusterconnectivitymanagementv2.UnregisterAgentRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.UnregisterAgentRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<UnregisterAgentRequest>
        PARSER = new com.google.protobuf.AbstractParser<UnregisterAgentRequest>() {
      @java.lang.Override
      public UnregisterAgentRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<UnregisterAgentRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<UnregisterAgentRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface GetAllAgentsCertificatesRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * Account ID for which the certificates need to retrieved.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    java.lang.String getAccountId();
    /**
     * <pre>
     * Account ID for which the certificates need to retrieved.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    com.google.protobuf.ByteString
        getAccountIdBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest}
   */
  public static final class GetAllAgentsCertificatesRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest)
      GetAllAgentsCertificatesRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetAllAgentsCertificatesRequest.newBuilder() to construct.
    private GetAllAgentsCertificatesRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private GetAllAgentsCertificatesRequest() {
      accountId_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetAllAgentsCertificatesRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.Builder.class);
    }

    public static final int ACCOUNTID_FIELD_NUMBER = 1;
    private volatile java.lang.Object accountId_;
    /**
     * <pre>
     * Account ID for which the certificates need to retrieved.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The accountId.
     */
    @java.lang.Override
    public java.lang.String getAccountId() {
      java.lang.Object ref = accountId_;
      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();
        accountId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Account ID for which the certificates need to retrieved.
     * </pre>
     *
     * <code>string accountId = 1;</code>
     * @return The bytes for accountId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAccountIdBytes() {
      java.lang.Object ref = accountId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        accountId_ = 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(accountId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, accountId_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accountId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, accountId_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest) obj;

      if (!getAccountId()
          .equals(other.getAccountId())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + ACCOUNTID_FIELD_NUMBER;
      hash = (53 * hash) + getAccountId().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest 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 clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        accountId_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest(this);
        result.accountId_ = accountId_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest.getDefaultInstance()) return this;
        if (!other.getAccountId().isEmpty()) {
          accountId_ = other.accountId_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                accountId_ = input.readStringRequireUtf8();

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private java.lang.Object accountId_ = "";
      /**
       * <pre>
       * Account ID for which the certificates need to retrieved.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The accountId.
       */
      public java.lang.String getAccountId() {
        java.lang.Object ref = accountId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          accountId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Account ID for which the certificates need to retrieved.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return The bytes for accountId.
       */
      public com.google.protobuf.ByteString
          getAccountIdBytes() {
        java.lang.Object ref = accountId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          accountId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Account ID for which the certificates need to retrieved.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        accountId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Account ID for which the certificates need to retrieved.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAccountId() {
        
        accountId_ = getDefaultInstance().getAccountId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Account ID for which the certificates need to retrieved.
       * </pre>
       *
       * <code>string accountId = 1;</code>
       * @param value The bytes for accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        accountId_ = 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:clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.GetAllAgentsCertificatesRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<GetAllAgentsCertificatesRequest>
        PARSER = new com.google.protobuf.AbstractParser<GetAllAgentsCertificatesRequest>() {
      @java.lang.Override
      public GetAllAgentsCertificatesRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<GetAllAgentsCertificatesRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<GetAllAgentsCertificatesRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface GetAllAgentsCertificatesResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return A list containing the certificates.
     */
    java.util.List<java.lang.String>
        getCertificatesList();
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The count of certificates.
     */
    int getCertificatesCount();
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the element to return.
     * @return The certificates at the given index.
     */
    java.lang.String getCertificates(int index);
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the value to return.
     * @return The bytes of the certificates at the given index.
     */
    com.google.protobuf.ByteString
        getCertificatesBytes(int index);
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse}
   */
  public static final class GetAllAgentsCertificatesResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse)
      GetAllAgentsCertificatesResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GetAllAgentsCertificatesResponse.newBuilder() to construct.
    private GetAllAgentsCertificatesResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private GetAllAgentsCertificatesResponse() {
      certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GetAllAgentsCertificatesResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.Builder.class);
    }

    public static final int CERTIFICATES_FIELD_NUMBER = 1;
    private com.google.protobuf.LazyStringList certificates_;
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return A list containing the certificates.
     */
    public com.google.protobuf.ProtocolStringList
        getCertificatesList() {
      return certificates_;
    }
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The count of certificates.
     */
    public int getCertificatesCount() {
      return certificates_.size();
    }
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the element to return.
     * @return The certificates at the given index.
     */
    public java.lang.String getCertificates(int index) {
      return certificates_.get(index);
    }
    /**
     * <pre>
     * Certificates of all the agents.
     * </pre>
     *
     * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the value to return.
     * @return The bytes of the certificates at the given index.
     */
    public com.google.protobuf.ByteString
        getCertificatesBytes(int index) {
      return certificates_.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 {
      for (int i = 0; i < certificates_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, certificates_.getRaw(i));
      }
      getUnknownFields().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 < certificates_.size(); i++) {
          dataSize += computeStringSizeNoTag(certificates_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getCertificatesList().size();
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse) obj;

      if (!getCertificatesList()
          .equals(other.getCertificatesList())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getCertificatesCount() > 0) {
        hash = (37 * hash) + CERTIFICATES_FIELD_NUMBER;
        hash = (53 * hash) + getCertificatesList().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse 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 clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) != 0)) {
          certificates_ = certificates_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.certificates_ = certificates_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse.getDefaultInstance()) return this;
        if (!other.certificates_.isEmpty()) {
          if (certificates_.isEmpty()) {
            certificates_ = other.certificates_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureCertificatesIsMutable();
            certificates_.addAll(other.certificates_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        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();
                ensureCertificatesIsMutable();
                certificates_.add(s);
                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }
      private int bitField0_;

      private com.google.protobuf.LazyStringList certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureCertificatesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          certificates_ = new com.google.protobuf.LazyStringArrayList(certificates_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return A list containing the certificates.
       */
      public com.google.protobuf.ProtocolStringList
          getCertificatesList() {
        return certificates_.getUnmodifiableView();
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return The count of certificates.
       */
      public int getCertificatesCount() {
        return certificates_.size();
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param index The index of the element to return.
       * @return The certificates at the given index.
       */
      public java.lang.String getCertificates(int index) {
        return certificates_.get(index);
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param index The index of the value to return.
       * @return The bytes of the certificates at the given index.
       */
      public com.google.protobuf.ByteString
          getCertificatesBytes(int index) {
        return certificates_.getByteString(index);
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param index The index to set the value at.
       * @param value The certificates to set.
       * @return This builder for chaining.
       */
      public Builder setCertificates(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCertificatesIsMutable();
        certificates_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The certificates to add.
       * @return This builder for chaining.
       */
      public Builder addCertificates(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCertificatesIsMutable();
        certificates_.add(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param values The certificates to add.
       * @return This builder for chaining.
       */
      public Builder addAllCertificates(
          java.lang.Iterable<java.lang.String> values) {
        ensureCertificatesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, certificates_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearCertificates() {
        certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Certificates of all the agents.
       * </pre>
       *
       * <code>repeated string certificates = 1 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The bytes of the certificates to add.
       * @return This builder for chaining.
       */
      public Builder addCertificatesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureCertificatesIsMutable();
        certificates_.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:clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.GetAllAgentsCertificatesResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<GetAllAgentsCertificatesResponse>
        PARSER = new com.google.protobuf.AbstractParser<GetAllAgentsCertificatesResponse>() {
      @java.lang.Override
      public GetAllAgentsCertificatesResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<GetAllAgentsCertificatesResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<GetAllAgentsCertificatesResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.GetAllAgentsCertificatesResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface UnregisterAgentResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.UnregisterAgentResponse)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.UnregisterAgentResponse}
   */
  public static final class UnregisterAgentResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.UnregisterAgentResponse)
      UnregisterAgentResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use UnregisterAgentResponse.newBuilder() to construct.
    private UnregisterAgentResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private UnregisterAgentResponse() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new UnregisterAgentResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.Builder.class);
    }

    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 {
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse) obj;

      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse 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 clusterconnectivitymanagementv2.UnregisterAgentResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.UnregisterAgentResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse(this);
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse.getDefaultInstance()) return this;
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        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:clusterconnectivitymanagementv2.UnregisterAgentResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.UnregisterAgentResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<UnregisterAgentResponse>
        PARSER = new com.google.protobuf.AbstractParser<UnregisterAgentResponse>() {
      @java.lang.Override
      public UnregisterAgentResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<UnregisterAgentResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<UnregisterAgentResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.UnregisterAgentResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface InvertingProxyOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.InvertingProxy)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * InvertingProxyTransitions captures the transition logic described here.
     * This returns the status of the inverting proxy deployment
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
     * @return The enum numeric value on the wire for status.
     */
    int getStatusValue();
    /**
     * <pre>
     * InvertingProxyTransitions captures the transition logic described here.
     * This returns the status of the inverting proxy deployment
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
     * @return The status.
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status getStatus();

    /**
     * <pre>
     * This is the host name where an agent can reach the inverting proxy running control plane.
     * </pre>
     *
     * <code>string hostname = 2;</code>
     * @return The hostname.
     */
    java.lang.String getHostname();
    /**
     * <pre>
     * This is the host name where an agent can reach the inverting proxy running control plane.
     * </pre>
     *
     * <code>string hostname = 2;</code>
     * @return The bytes for hostname.
     */
    com.google.protobuf.ByteString
        getHostnameBytes();

    /**
     * <pre>
     * User friendly message explaining why inverting proxy is in failed status
     * This is not sent if the inverting proxy is created and is ready to accept requests
     * </pre>
     *
     * <code>string causeOfFailure = 3;</code>
     * @return The causeOfFailure.
     */
    java.lang.String getCauseOfFailure();
    /**
     * <pre>
     * User friendly message explaining why inverting proxy is in failed status
     * This is not sent if the inverting proxy is created and is ready to accept requests
     * </pre>
     *
     * <code>string causeOfFailure = 3;</code>
     * @return The bytes for causeOfFailure.
     */
    com.google.protobuf.ByteString
        getCauseOfFailureBytes();

    /**
     * <pre>
     * Certificate of inverting-proxy that needs to be passed to agent.
     * We intend to depracate this field in favor of 'caCertificate'.
     * </pre>
     *
     * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The certificate.
     */
    java.lang.String getCertificate();
    /**
     * <pre>
     * Certificate of inverting-proxy that needs to be passed to agent.
     * We intend to depracate this field in favor of 'caCertificate'.
     * </pre>
     *
     * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The bytes for certificate.
     */
    com.google.protobuf.ByteString
        getCertificateBytes();

    /**
     * <pre>
     * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
     * </pre>
     *
     * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The caCertificate.
     */
    java.lang.String getCaCertificate();
    /**
     * <pre>
     * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
     * </pre>
     *
     * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The bytes for caCertificate.
     */
    com.google.protobuf.ByteString
        getCaCertificateBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.InvertingProxy}
   */
  public static final class InvertingProxy extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.InvertingProxy)
      InvertingProxyOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use InvertingProxy.newBuilder() to construct.
    private InvertingProxy(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private InvertingProxy() {
      status_ = 0;
      hostname_ = "";
      causeOfFailure_ = "";
      certificate_ = "";
      caCertificate_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new InvertingProxy();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxy_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxy_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder.class);
    }

    /**
     * Protobuf enum {@code clusterconnectivitymanagementv2.InvertingProxy.Status}
     */
    public enum Status
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <pre>
       * Inverting Proxy enters this state as the first step of the creating
       * deployment. This is a transitory state.
       * </pre>
       *
       * <code>CREATING = 0;</code>
       */
      CREATING(0),
      /**
       * <pre>
       * Inverting Proxy enters this state when it is ready to accept requests
       * </pre>
       *
       * <code>READY = 1;</code>
       */
      READY(1),
      /**
       * <pre>
       * Inverting Proxy enters this state after a failure of create or
       * terminate.
       * </pre>
       *
       * <code>FAILED = 2;</code>
       */
      FAILED(2),
      UNRECOGNIZED(-1),
      ;

      /**
       * <pre>
       * Inverting Proxy enters this state as the first step of the creating
       * deployment. This is a transitory state.
       * </pre>
       *
       * <code>CREATING = 0;</code>
       */
      public static final int CREATING_VALUE = 0;
      /**
       * <pre>
       * Inverting Proxy enters this state when it is ready to accept requests
       * </pre>
       *
       * <code>READY = 1;</code>
       */
      public static final int READY_VALUE = 1;
      /**
       * <pre>
       * Inverting Proxy enters this state after a failure of create or
       * terminate.
       * </pre>
       *
       * <code>FAILED = 2;</code>
       */
      public static final int FAILED_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 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 CREATING;
          case 1: return READY;
          case 2: return FAILED;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap<Status>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Status> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Status>() {
              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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.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:clusterconnectivitymanagementv2.InvertingProxy.Status)
    }

    public static final int STATUS_FIELD_NUMBER = 1;
    private int status_;
    /**
     * <pre>
     * InvertingProxyTransitions captures the transition logic described here.
     * This returns the status of the inverting proxy deployment
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
     * @return The enum numeric value on the wire for status.
     */
    @java.lang.Override public int getStatusValue() {
      return status_;
    }
    /**
     * <pre>
     * InvertingProxyTransitions captures the transition logic described here.
     * This returns the status of the inverting proxy deployment
     * </pre>
     *
     * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
     * @return The status.
     */
    @java.lang.Override public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status getStatus() {
      @SuppressWarnings("deprecation")
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status result = com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status.valueOf(status_);
      return result == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status.UNRECOGNIZED : result;
    }

    public static final int HOSTNAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object hostname_;
    /**
     * <pre>
     * This is the host name where an agent can reach the inverting proxy running control plane.
     * </pre>
     *
     * <code>string hostname = 2;</code>
     * @return The hostname.
     */
    @java.lang.Override
    public java.lang.String getHostname() {
      java.lang.Object ref = hostname_;
      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();
        hostname_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * This is the host name where an agent can reach the inverting proxy running control plane.
     * </pre>
     *
     * <code>string hostname = 2;</code>
     * @return The bytes for hostname.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getHostnameBytes() {
      java.lang.Object ref = hostname_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        hostname_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CAUSEOFFAILURE_FIELD_NUMBER = 3;
    private volatile java.lang.Object causeOfFailure_;
    /**
     * <pre>
     * User friendly message explaining why inverting proxy is in failed status
     * This is not sent if the inverting proxy is created and is ready to accept requests
     * </pre>
     *
     * <code>string causeOfFailure = 3;</code>
     * @return The causeOfFailure.
     */
    @java.lang.Override
    public java.lang.String getCauseOfFailure() {
      java.lang.Object ref = causeOfFailure_;
      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();
        causeOfFailure_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * User friendly message explaining why inverting proxy is in failed status
     * This is not sent if the inverting proxy is created and is ready to accept requests
     * </pre>
     *
     * <code>string causeOfFailure = 3;</code>
     * @return The bytes for causeOfFailure.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCauseOfFailureBytes() {
      java.lang.Object ref = causeOfFailure_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        causeOfFailure_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CERTIFICATE_FIELD_NUMBER = 4;
    private volatile java.lang.Object certificate_;
    /**
     * <pre>
     * Certificate of inverting-proxy that needs to be passed to agent.
     * We intend to depracate this field in favor of 'caCertificate'.
     * </pre>
     *
     * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The certificate.
     */
    @java.lang.Override
    public java.lang.String getCertificate() {
      java.lang.Object ref = certificate_;
      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();
        certificate_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Certificate of inverting-proxy that needs to be passed to agent.
     * We intend to depracate this field in favor of 'caCertificate'.
     * </pre>
     *
     * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The bytes for certificate.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCertificateBytes() {
      java.lang.Object ref = certificate_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        certificate_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CACERTIFICATE_FIELD_NUMBER = 5;
    private volatile java.lang.Object caCertificate_;
    /**
     * <pre>
     * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
     * </pre>
     *
     * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The caCertificate.
     */
    @java.lang.Override
    public java.lang.String getCaCertificate() {
      java.lang.Object ref = caCertificate_;
      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();
        caCertificate_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
     * </pre>
     *
     * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The bytes for caCertificate.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCaCertificateBytes() {
      java.lang.Object ref = caCertificate_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        caCertificate_ = 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 (status_ != com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status.CREATING.getNumber()) {
        output.writeEnum(1, status_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostname_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, hostname_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(causeOfFailure_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, causeOfFailure_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(certificate_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, certificate_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(caCertificate_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, caCertificate_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (status_ != com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status.CREATING.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(1, status_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostname_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, hostname_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(causeOfFailure_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, causeOfFailure_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(certificate_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, certificate_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(caCertificate_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, caCertificate_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy) obj;

      if (status_ != other.status_) return false;
      if (!getHostname()
          .equals(other.getHostname())) return false;
      if (!getCauseOfFailure()
          .equals(other.getCauseOfFailure())) return false;
      if (!getCertificate()
          .equals(other.getCertificate())) return false;
      if (!getCaCertificate()
          .equals(other.getCaCertificate())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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 = (37 * hash) + HOSTNAME_FIELD_NUMBER;
      hash = (53 * hash) + getHostname().hashCode();
      hash = (37 * hash) + CAUSEOFFAILURE_FIELD_NUMBER;
      hash = (53 * hash) + getCauseOfFailure().hashCode();
      hash = (37 * hash) + CERTIFICATE_FIELD_NUMBER;
      hash = (53 * hash) + getCertificate().hashCode();
      hash = (37 * hash) + CACERTIFICATE_FIELD_NUMBER;
      hash = (53 * hash) + getCaCertificate().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy 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 clusterconnectivitymanagementv2.InvertingProxy}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.InvertingProxy)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxy_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxy_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        status_ = 0;

        hostname_ = "";

        causeOfFailure_ = "";

        certificate_ = "";

        caCertificate_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxy_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy(this);
        result.status_ = status_;
        result.hostname_ = hostname_;
        result.causeOfFailure_ = causeOfFailure_;
        result.certificate_ = certificate_;
        result.caCertificate_ = caCertificate_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.getDefaultInstance()) return this;
        if (other.status_ != 0) {
          setStatusValue(other.getStatusValue());
        }
        if (!other.getHostname().isEmpty()) {
          hostname_ = other.hostname_;
          onChanged();
        }
        if (!other.getCauseOfFailure().isEmpty()) {
          causeOfFailure_ = other.causeOfFailure_;
          onChanged();
        }
        if (!other.getCertificate().isEmpty()) {
          certificate_ = other.certificate_;
          onChanged();
        }
        if (!other.getCaCertificate().isEmpty()) {
          caCertificate_ = other.caCertificate_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 8: {
                status_ = input.readEnum();

                break;
              } // case 8
              case 18: {
                hostname_ = input.readStringRequireUtf8();

                break;
              } // case 18
              case 26: {
                causeOfFailure_ = input.readStringRequireUtf8();

                break;
              } // case 26
              case 34: {
                certificate_ = input.readStringRequireUtf8();

                break;
              } // case 34
              case 42: {
                caCertificate_ = input.readStringRequireUtf8();

                break;
              } // case 42
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private int status_ = 0;
      /**
       * <pre>
       * InvertingProxyTransitions captures the transition logic described here.
       * This returns the status of the inverting proxy deployment
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
       * @return The enum numeric value on the wire for status.
       */
      @java.lang.Override public int getStatusValue() {
        return status_;
      }
      /**
       * <pre>
       * InvertingProxyTransitions captures the transition logic described here.
       * This returns the status of the inverting proxy deployment
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
       * @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;
      }
      /**
       * <pre>
       * InvertingProxyTransitions captures the transition logic described here.
       * This returns the status of the inverting proxy deployment
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
       * @return The status.
       */
      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status getStatus() {
        @SuppressWarnings("deprecation")
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status result = com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status.valueOf(status_);
        return result == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status.UNRECOGNIZED : result;
      }
      /**
       * <pre>
       * InvertingProxyTransitions captures the transition logic described here.
       * This returns the status of the inverting proxy deployment
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
       * @param value The status to set.
       * @return This builder for chaining.
       */
      public Builder setStatus(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy.Status value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        status_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * InvertingProxyTransitions captures the transition logic described here.
       * This returns the status of the inverting proxy deployment
       * </pre>
       *
       * <code>.clusterconnectivitymanagementv2.InvertingProxy.Status status = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearStatus() {
        
        status_ = 0;
        onChanged();
        return this;
      }

      private java.lang.Object hostname_ = "";
      /**
       * <pre>
       * This is the host name where an agent can reach the inverting proxy running control plane.
       * </pre>
       *
       * <code>string hostname = 2;</code>
       * @return The hostname.
       */
      public java.lang.String getHostname() {
        java.lang.Object ref = hostname_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          hostname_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * This is the host name where an agent can reach the inverting proxy running control plane.
       * </pre>
       *
       * <code>string hostname = 2;</code>
       * @return The bytes for hostname.
       */
      public com.google.protobuf.ByteString
          getHostnameBytes() {
        java.lang.Object ref = hostname_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          hostname_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * This is the host name where an agent can reach the inverting proxy running control plane.
       * </pre>
       *
       * <code>string hostname = 2;</code>
       * @param value The hostname to set.
       * @return This builder for chaining.
       */
      public Builder setHostname(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        hostname_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * This is the host name where an agent can reach the inverting proxy running control plane.
       * </pre>
       *
       * <code>string hostname = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearHostname() {
        
        hostname_ = getDefaultInstance().getHostname();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * This is the host name where an agent can reach the inverting proxy running control plane.
       * </pre>
       *
       * <code>string hostname = 2;</code>
       * @param value The bytes for hostname to set.
       * @return This builder for chaining.
       */
      public Builder setHostnameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        hostname_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object causeOfFailure_ = "";
      /**
       * <pre>
       * User friendly message explaining why inverting proxy is in failed status
       * This is not sent if the inverting proxy is created and is ready to accept requests
       * </pre>
       *
       * <code>string causeOfFailure = 3;</code>
       * @return The causeOfFailure.
       */
      public java.lang.String getCauseOfFailure() {
        java.lang.Object ref = causeOfFailure_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          causeOfFailure_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * User friendly message explaining why inverting proxy is in failed status
       * This is not sent if the inverting proxy is created and is ready to accept requests
       * </pre>
       *
       * <code>string causeOfFailure = 3;</code>
       * @return The bytes for causeOfFailure.
       */
      public com.google.protobuf.ByteString
          getCauseOfFailureBytes() {
        java.lang.Object ref = causeOfFailure_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          causeOfFailure_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * User friendly message explaining why inverting proxy is in failed status
       * This is not sent if the inverting proxy is created and is ready to accept requests
       * </pre>
       *
       * <code>string causeOfFailure = 3;</code>
       * @param value The causeOfFailure to set.
       * @return This builder for chaining.
       */
      public Builder setCauseOfFailure(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        causeOfFailure_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * User friendly message explaining why inverting proxy is in failed status
       * This is not sent if the inverting proxy is created and is ready to accept requests
       * </pre>
       *
       * <code>string causeOfFailure = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearCauseOfFailure() {
        
        causeOfFailure_ = getDefaultInstance().getCauseOfFailure();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * User friendly message explaining why inverting proxy is in failed status
       * This is not sent if the inverting proxy is created and is ready to accept requests
       * </pre>
       *
       * <code>string causeOfFailure = 3;</code>
       * @param value The bytes for causeOfFailure to set.
       * @return This builder for chaining.
       */
      public Builder setCauseOfFailureBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        causeOfFailure_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object certificate_ = "";
      /**
       * <pre>
       * Certificate of inverting-proxy that needs to be passed to agent.
       * We intend to depracate this field in favor of 'caCertificate'.
       * </pre>
       *
       * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @return The certificate.
       */
      public java.lang.String getCertificate() {
        java.lang.Object ref = certificate_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          certificate_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Certificate of inverting-proxy that needs to be passed to agent.
       * We intend to depracate this field in favor of 'caCertificate'.
       * </pre>
       *
       * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @return The bytes for certificate.
       */
      public com.google.protobuf.ByteString
          getCertificateBytes() {
        java.lang.Object ref = certificate_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          certificate_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Certificate of inverting-proxy that needs to be passed to agent.
       * We intend to depracate this field in favor of 'caCertificate'.
       * </pre>
       *
       * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @param value The certificate to set.
       * @return This builder for chaining.
       */
      public Builder setCertificate(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        certificate_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Certificate of inverting-proxy that needs to be passed to agent.
       * We intend to depracate this field in favor of 'caCertificate'.
       * </pre>
       *
       * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearCertificate() {
        
        certificate_ = getDefaultInstance().getCertificate();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Certificate of inverting-proxy that needs to be passed to agent.
       * We intend to depracate this field in favor of 'caCertificate'.
       * </pre>
       *
       * <code>string certificate = 4 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @param value The bytes for certificate to set.
       * @return This builder for chaining.
       */
      public Builder setCertificateBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        certificate_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object caCertificate_ = "";
      /**
       * <pre>
       * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
       * </pre>
       *
       * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return The caCertificate.
       */
      public java.lang.String getCaCertificate() {
        java.lang.Object ref = caCertificate_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          caCertificate_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
       * </pre>
       *
       * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return The bytes for caCertificate.
       */
      public com.google.protobuf.ByteString
          getCaCertificateBytes() {
        java.lang.Object ref = caCertificate_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          caCertificate_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
       * </pre>
       *
       * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The caCertificate to set.
       * @return This builder for chaining.
       */
      public Builder setCaCertificate(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        caCertificate_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
       * </pre>
       *
       * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearCaCertificate() {
        
        caCertificate_ = getDefaultInstance().getCaCertificate();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * CA Certificate used to sign certificate of inverting-proxy server. It needs to be passed to agent.
       * </pre>
       *
       * <code>string caCertificate = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The bytes for caCertificate to set.
       * @return This builder for chaining.
       */
      public Builder setCaCertificateBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        caCertificate_ = 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:clusterconnectivitymanagementv2.InvertingProxy)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.InvertingProxy)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<InvertingProxy>
        PARSER = new com.google.protobuf.AbstractParser<InvertingProxy>() {
      @java.lang.Override
      public InvertingProxy parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<InvertingProxy> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<InvertingProxy> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxy getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface InvertingProxyAgentOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.InvertingProxyAgent)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The agentCrn.
     */
    java.lang.String getAgentCrn();
    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The bytes for agentCrn.
     */
    com.google.protobuf.ByteString
        getAgentCrnBytes();

    /**
     * <pre>
     * Enciphered Generated key for the agent
     * </pre>
     *
     * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The encipheredPrivateKey.
     */
    java.lang.String getEncipheredPrivateKey();
    /**
     * <pre>
     * Enciphered Generated key for the agent
     * </pre>
     *
     * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The bytes for encipheredPrivateKey.
     */
    com.google.protobuf.ByteString
        getEncipheredPrivateKeyBytes();

    /**
     * <pre>
     * Generated cert for the agent
     * We intend to deprecate this field in favor of 'certificates'.
     * This is required to support CA signed certificates for agents.
     * </pre>
     *
     * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The certificate.
     */
    java.lang.String getCertificate();
    /**
     * <pre>
     * Generated cert for the agent
     * We intend to deprecate this field in favor of 'certificates'.
     * This is required to support CA signed certificates for agents.
     * </pre>
     *
     * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The bytes for certificate.
     */
    com.google.protobuf.ByteString
        getCertificateBytes();

    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
     * implies that the provisioning service has consented to the use of this agent to target backend services
     * outside the host it is deployed on.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The environmentCrn.
     */
    java.lang.String getEnvironmentCrn();
    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
     * implies that the provisioning service has consented to the use of this agent to target backend services
     * outside the host it is deployed on.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The bytes for environmentCrn.
     */
    com.google.protobuf.ByteString
        getEnvironmentCrnBytes();

    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return A list containing the certificates.
     */
    java.util.List<java.lang.String>
        getCertificatesList();
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The count of certificates.
     */
    int getCertificatesCount();
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the element to return.
     * @return The certificates at the given index.
     */
    java.lang.String getCertificates(int index);
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the value to return.
     * @return The bytes of the certificates at the given index.
     */
    com.google.protobuf.ByteString
        getCertificatesBytes(int index);

    /**
     * <pre>
     * The access key ID for the machine user
     * </pre>
     *
     * <code>string accessKeyId = 6;</code>
     * @return The accessKeyId.
     */
    java.lang.String getAccessKeyId();
    /**
     * <pre>
     * The access key ID for the machine user
     * </pre>
     *
     * <code>string accessKeyId = 6;</code>
     * @return The bytes for accessKeyId.
     */
    com.google.protobuf.ByteString
        getAccessKeyIdBytes();

    /**
     * <pre>
     * The access key is the private key for the machine user. This is an Ed25519 private key and is
     * 32 bytes encoded in base64 that should be used to sign requests.
     * </pre>
     *
     * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The encipheredAccessKey.
     */
    java.lang.String getEncipheredAccessKey();
    /**
     * <pre>
     * The access key is the private key for the machine user. This is an Ed25519 private key and is
     * 32 bytes encoded in base64 that should be used to sign requests.
     * </pre>
     *
     * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The bytes for encipheredAccessKey.
     */
    com.google.protobuf.ByteString
        getEncipheredAccessKeyBytes();

    /**
     * <pre>
     * The initialisationVector used to encrypt the access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The initialisationVector.
     */
    java.lang.String getInitialisationVector();
    /**
     * <pre>
     * The initialisationVector used to encrypt the access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The bytes for initialisationVector.
     */
    com.google.protobuf.ByteString
        getInitialisationVectorBytes();

    /**
     * <pre>
     * The mac calculated for the encrypted access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The hmacForPrivateKey.
     */
    java.lang.String getHmacForPrivateKey();
    /**
     * <pre>
     * The mac calculated for the encrypted access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The bytes for hmacForPrivateKey.
     */
    com.google.protobuf.ByteString
        getHmacForPrivateKeyBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.InvertingProxyAgent}
   */
  public static final class InvertingProxyAgent extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.InvertingProxyAgent)
      InvertingProxyAgentOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use InvertingProxyAgent.newBuilder() to construct.
    private InvertingProxyAgent(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private InvertingProxyAgent() {
      agentCrn_ = "";
      encipheredPrivateKey_ = "";
      certificate_ = "";
      environmentCrn_ = "";
      certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      accessKeyId_ = "";
      encipheredAccessKey_ = "";
      initialisationVector_ = "";
      hmacForPrivateKey_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new InvertingProxyAgent();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder.class);
    }

    public static final int AGENTCRN_FIELD_NUMBER = 1;
    private volatile java.lang.Object agentCrn_;
    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The agentCrn.
     */
    @java.lang.Override
    public java.lang.String getAgentCrn() {
      java.lang.Object ref = agentCrn_;
      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();
        agentCrn_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Unique identifier for each agent
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The bytes for agentCrn.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAgentCrnBytes() {
      java.lang.Object ref = agentCrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        agentCrn_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENCIPHEREDPRIVATEKEY_FIELD_NUMBER = 2;
    private volatile java.lang.Object encipheredPrivateKey_;
    /**
     * <pre>
     * Enciphered Generated key for the agent
     * </pre>
     *
     * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The encipheredPrivateKey.
     */
    @java.lang.Override
    public java.lang.String getEncipheredPrivateKey() {
      java.lang.Object ref = encipheredPrivateKey_;
      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();
        encipheredPrivateKey_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Enciphered Generated key for the agent
     * </pre>
     *
     * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The bytes for encipheredPrivateKey.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getEncipheredPrivateKeyBytes() {
      java.lang.Object ref = encipheredPrivateKey_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        encipheredPrivateKey_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CERTIFICATE_FIELD_NUMBER = 3;
    private volatile java.lang.Object certificate_;
    /**
     * <pre>
     * Generated cert for the agent
     * We intend to deprecate this field in favor of 'certificates'.
     * This is required to support CA signed certificates for agents.
     * </pre>
     *
     * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The certificate.
     */
    @java.lang.Override
    public java.lang.String getCertificate() {
      java.lang.Object ref = certificate_;
      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();
        certificate_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * Generated cert for the agent
     * We intend to deprecate this field in favor of 'certificates'.
     * This is required to support CA signed certificates for agents.
     * </pre>
     *
     * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
     * @return The bytes for certificate.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getCertificateBytes() {
      java.lang.Object ref = certificate_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        certificate_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENVIRONMENTCRN_FIELD_NUMBER = 4;
    private volatile java.lang.Object environmentCrn_;
    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
     * implies that the provisioning service has consented to the use of this agent to target backend services
     * outside the host it is deployed on.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The environmentCrn.
     */
    @java.lang.Override
    public java.lang.String getEnvironmentCrn() {
      java.lang.Object ref = environmentCrn_;
      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();
        environmentCrn_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
     * implies that the provisioning service has consented to the use of this agent to target backend services
     * outside the host it is deployed on.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The bytes for environmentCrn.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getEnvironmentCrnBytes() {
      java.lang.Object ref = environmentCrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        environmentCrn_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CERTIFICATES_FIELD_NUMBER = 5;
    private com.google.protobuf.LazyStringList certificates_;
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return A list containing the certificates.
     */
    public com.google.protobuf.ProtocolStringList
        getCertificatesList() {
      return certificates_;
    }
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @return The count of certificates.
     */
    public int getCertificatesCount() {
      return certificates_.size();
    }
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the element to return.
     * @return The certificates at the given index.
     */
    public java.lang.String getCertificates(int index) {
      return certificates_.get(index);
    }
    /**
     * <pre>
     * Generated certificate and the trust chain for agent
     * </pre>
     *
     * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
     * @param index The index of the value to return.
     * @return The bytes of the certificates at the given index.
     */
    public com.google.protobuf.ByteString
        getCertificatesBytes(int index) {
      return certificates_.getByteString(index);
    }

    public static final int ACCESSKEYID_FIELD_NUMBER = 6;
    private volatile java.lang.Object accessKeyId_;
    /**
     * <pre>
     * The access key ID for the machine user
     * </pre>
     *
     * <code>string accessKeyId = 6;</code>
     * @return The accessKeyId.
     */
    @java.lang.Override
    public java.lang.String getAccessKeyId() {
      java.lang.Object ref = accessKeyId_;
      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();
        accessKeyId_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * The access key ID for the machine user
     * </pre>
     *
     * <code>string accessKeyId = 6;</code>
     * @return The bytes for accessKeyId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAccessKeyIdBytes() {
      java.lang.Object ref = accessKeyId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        accessKeyId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENCIPHEREDACCESSKEY_FIELD_NUMBER = 7;
    private volatile java.lang.Object encipheredAccessKey_;
    /**
     * <pre>
     * The access key is the private key for the machine user. This is an Ed25519 private key and is
     * 32 bytes encoded in base64 that should be used to sign requests.
     * </pre>
     *
     * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The encipheredAccessKey.
     */
    @java.lang.Override
    public java.lang.String getEncipheredAccessKey() {
      java.lang.Object ref = encipheredAccessKey_;
      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();
        encipheredAccessKey_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * The access key is the private key for the machine user. This is an Ed25519 private key and is
     * 32 bytes encoded in base64 that should be used to sign requests.
     * </pre>
     *
     * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The bytes for encipheredAccessKey.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getEncipheredAccessKeyBytes() {
      java.lang.Object ref = encipheredAccessKey_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        encipheredAccessKey_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int INITIALISATIONVECTOR_FIELD_NUMBER = 8;
    private volatile java.lang.Object initialisationVector_;
    /**
     * <pre>
     * The initialisationVector used to encrypt the access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The initialisationVector.
     */
    @java.lang.Override
    public java.lang.String getInitialisationVector() {
      java.lang.Object ref = initialisationVector_;
      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();
        initialisationVector_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * The initialisationVector used to encrypt the access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The bytes for initialisationVector.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getInitialisationVectorBytes() {
      java.lang.Object ref = initialisationVector_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        initialisationVector_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HMACFORPRIVATEKEY_FIELD_NUMBER = 9;
    private volatile java.lang.Object hmacForPrivateKey_;
    /**
     * <pre>
     * The mac calculated for the encrypted access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The hmacForPrivateKey.
     */
    @java.lang.Override
    public java.lang.String getHmacForPrivateKey() {
      java.lang.Object ref = hmacForPrivateKey_;
      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();
        hmacForPrivateKey_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * The mac calculated for the encrypted access key.
     * Only available for AES256 algorithm.
     * </pre>
     *
     * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
     * @return The bytes for hmacForPrivateKey.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getHmacForPrivateKeyBytes() {
      java.lang.Object ref = hmacForPrivateKey_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        hmacForPrivateKey_ = 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(agentCrn_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, agentCrn_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(encipheredPrivateKey_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, encipheredPrivateKey_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(certificate_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, certificate_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentCrn_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, environmentCrn_);
      }
      for (int i = 0; i < certificates_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, certificates_.getRaw(i));
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accessKeyId_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, accessKeyId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(encipheredAccessKey_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, encipheredAccessKey_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(initialisationVector_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, initialisationVector_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hmacForPrivateKey_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 9, hmacForPrivateKey_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(agentCrn_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, agentCrn_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(encipheredPrivateKey_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, encipheredPrivateKey_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(certificate_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, certificate_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(environmentCrn_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, environmentCrn_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < certificates_.size(); i++) {
          dataSize += computeStringSizeNoTag(certificates_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getCertificatesList().size();
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(accessKeyId_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, accessKeyId_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(encipheredAccessKey_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, encipheredAccessKey_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(initialisationVector_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, initialisationVector_);
      }
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hmacForPrivateKey_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, hmacForPrivateKey_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent) obj;

      if (!getAgentCrn()
          .equals(other.getAgentCrn())) return false;
      if (!getEncipheredPrivateKey()
          .equals(other.getEncipheredPrivateKey())) return false;
      if (!getCertificate()
          .equals(other.getCertificate())) return false;
      if (!getEnvironmentCrn()
          .equals(other.getEnvironmentCrn())) return false;
      if (!getCertificatesList()
          .equals(other.getCertificatesList())) return false;
      if (!getAccessKeyId()
          .equals(other.getAccessKeyId())) return false;
      if (!getEncipheredAccessKey()
          .equals(other.getEncipheredAccessKey())) return false;
      if (!getInitialisationVector()
          .equals(other.getInitialisationVector())) return false;
      if (!getHmacForPrivateKey()
          .equals(other.getHmacForPrivateKey())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + AGENTCRN_FIELD_NUMBER;
      hash = (53 * hash) + getAgentCrn().hashCode();
      hash = (37 * hash) + ENCIPHEREDPRIVATEKEY_FIELD_NUMBER;
      hash = (53 * hash) + getEncipheredPrivateKey().hashCode();
      hash = (37 * hash) + CERTIFICATE_FIELD_NUMBER;
      hash = (53 * hash) + getCertificate().hashCode();
      hash = (37 * hash) + ENVIRONMENTCRN_FIELD_NUMBER;
      hash = (53 * hash) + getEnvironmentCrn().hashCode();
      if (getCertificatesCount() > 0) {
        hash = (37 * hash) + CERTIFICATES_FIELD_NUMBER;
        hash = (53 * hash) + getCertificatesList().hashCode();
      }
      hash = (37 * hash) + ACCESSKEYID_FIELD_NUMBER;
      hash = (53 * hash) + getAccessKeyId().hashCode();
      hash = (37 * hash) + ENCIPHEREDACCESSKEY_FIELD_NUMBER;
      hash = (53 * hash) + getEncipheredAccessKey().hashCode();
      hash = (37 * hash) + INITIALISATIONVECTOR_FIELD_NUMBER;
      hash = (53 * hash) + getInitialisationVector().hashCode();
      hash = (37 * hash) + HMACFORPRIVATEKEY_FIELD_NUMBER;
      hash = (53 * hash) + getHmacForPrivateKey().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent 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 clusterconnectivitymanagementv2.InvertingProxyAgent}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.InvertingProxyAgent)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        agentCrn_ = "";

        encipheredPrivateKey_ = "";

        certificate_ = "";

        environmentCrn_ = "";

        certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        accessKeyId_ = "";

        encipheredAccessKey_ = "";

        initialisationVector_ = "";

        hmacForPrivateKey_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent(this);
        int from_bitField0_ = bitField0_;
        result.agentCrn_ = agentCrn_;
        result.encipheredPrivateKey_ = encipheredPrivateKey_;
        result.certificate_ = certificate_;
        result.environmentCrn_ = environmentCrn_;
        if (((bitField0_ & 0x00000001) != 0)) {
          certificates_ = certificates_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.certificates_ = certificates_;
        result.accessKeyId_ = accessKeyId_;
        result.encipheredAccessKey_ = encipheredAccessKey_;
        result.initialisationVector_ = initialisationVector_;
        result.hmacForPrivateKey_ = hmacForPrivateKey_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance()) return this;
        if (!other.getAgentCrn().isEmpty()) {
          agentCrn_ = other.agentCrn_;
          onChanged();
        }
        if (!other.getEncipheredPrivateKey().isEmpty()) {
          encipheredPrivateKey_ = other.encipheredPrivateKey_;
          onChanged();
        }
        if (!other.getCertificate().isEmpty()) {
          certificate_ = other.certificate_;
          onChanged();
        }
        if (!other.getEnvironmentCrn().isEmpty()) {
          environmentCrn_ = other.environmentCrn_;
          onChanged();
        }
        if (!other.certificates_.isEmpty()) {
          if (certificates_.isEmpty()) {
            certificates_ = other.certificates_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureCertificatesIsMutable();
            certificates_.addAll(other.certificates_);
          }
          onChanged();
        }
        if (!other.getAccessKeyId().isEmpty()) {
          accessKeyId_ = other.accessKeyId_;
          onChanged();
        }
        if (!other.getEncipheredAccessKey().isEmpty()) {
          encipheredAccessKey_ = other.encipheredAccessKey_;
          onChanged();
        }
        if (!other.getInitialisationVector().isEmpty()) {
          initialisationVector_ = other.initialisationVector_;
          onChanged();
        }
        if (!other.getHmacForPrivateKey().isEmpty()) {
          hmacForPrivateKey_ = other.hmacForPrivateKey_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                agentCrn_ = input.readStringRequireUtf8();

                break;
              } // case 10
              case 18: {
                encipheredPrivateKey_ = input.readStringRequireUtf8();

                break;
              } // case 18
              case 26: {
                certificate_ = input.readStringRequireUtf8();

                break;
              } // case 26
              case 34: {
                environmentCrn_ = input.readStringRequireUtf8();

                break;
              } // case 34
              case 42: {
                java.lang.String s = input.readStringRequireUtf8();
                ensureCertificatesIsMutable();
                certificates_.add(s);
                break;
              } // case 42
              case 50: {
                accessKeyId_ = input.readStringRequireUtf8();

                break;
              } // case 50
              case 58: {
                encipheredAccessKey_ = input.readStringRequireUtf8();

                break;
              } // case 58
              case 66: {
                initialisationVector_ = input.readStringRequireUtf8();

                break;
              } // case 66
              case 74: {
                hmacForPrivateKey_ = input.readStringRequireUtf8();

                break;
              } // case 74
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }
      private int bitField0_;

      private java.lang.Object agentCrn_ = "";
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return The agentCrn.
       */
      public java.lang.String getAgentCrn() {
        java.lang.Object ref = agentCrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          agentCrn_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return The bytes for agentCrn.
       */
      public com.google.protobuf.ByteString
          getAgentCrnBytes() {
        java.lang.Object ref = agentCrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          agentCrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @param value The agentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setAgentCrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        agentCrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAgentCrn() {
        
        agentCrn_ = getDefaultInstance().getAgentCrn();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Unique identifier for each agent
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @param value The bytes for agentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setAgentCrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        agentCrn_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object encipheredPrivateKey_ = "";
      /**
       * <pre>
       * Enciphered Generated key for the agent
       * </pre>
       *
       * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return The encipheredPrivateKey.
       */
      public java.lang.String getEncipheredPrivateKey() {
        java.lang.Object ref = encipheredPrivateKey_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          encipheredPrivateKey_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Enciphered Generated key for the agent
       * </pre>
       *
       * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return The bytes for encipheredPrivateKey.
       */
      public com.google.protobuf.ByteString
          getEncipheredPrivateKeyBytes() {
        java.lang.Object ref = encipheredPrivateKey_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          encipheredPrivateKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Enciphered Generated key for the agent
       * </pre>
       *
       * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The encipheredPrivateKey to set.
       * @return This builder for chaining.
       */
      public Builder setEncipheredPrivateKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        encipheredPrivateKey_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Enciphered Generated key for the agent
       * </pre>
       *
       * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearEncipheredPrivateKey() {
        
        encipheredPrivateKey_ = getDefaultInstance().getEncipheredPrivateKey();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Enciphered Generated key for the agent
       * </pre>
       *
       * <code>string encipheredPrivateKey = 2 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The bytes for encipheredPrivateKey to set.
       * @return This builder for chaining.
       */
      public Builder setEncipheredPrivateKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        encipheredPrivateKey_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object certificate_ = "";
      /**
       * <pre>
       * Generated cert for the agent
       * We intend to deprecate this field in favor of 'certificates'.
       * This is required to support CA signed certificates for agents.
       * </pre>
       *
       * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @return The certificate.
       */
      public java.lang.String getCertificate() {
        java.lang.Object ref = certificate_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          certificate_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Generated cert for the agent
       * We intend to deprecate this field in favor of 'certificates'.
       * This is required to support CA signed certificates for agents.
       * </pre>
       *
       * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @return The bytes for certificate.
       */
      public com.google.protobuf.ByteString
          getCertificateBytes() {
        java.lang.Object ref = certificate_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          certificate_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Generated cert for the agent
       * We intend to deprecate this field in favor of 'certificates'.
       * This is required to support CA signed certificates for agents.
       * </pre>
       *
       * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @param value The certificate to set.
       * @return This builder for chaining.
       */
      public Builder setCertificate(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        certificate_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Generated cert for the agent
       * We intend to deprecate this field in favor of 'certificates'.
       * This is required to support CA signed certificates for agents.
       * </pre>
       *
       * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearCertificate() {
        
        certificate_ = getDefaultInstance().getCertificate();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Generated cert for the agent
       * We intend to deprecate this field in favor of 'certificates'.
       * This is required to support CA signed certificates for agents.
       * </pre>
       *
       * <code>string certificate = 3 [(.options.FieldExtension.skipLogging) = true, (.options.FieldExtension.deprecated) = true];</code>
       * @param value The bytes for certificate to set.
       * @return This builder for chaining.
       */
      public Builder setCertificateBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        certificate_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object environmentCrn_ = "";
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
       * implies that the provisioning service has consented to the use of this agent to target backend services
       * outside the host it is deployed on.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return The environmentCrn.
       */
      public java.lang.String getEnvironmentCrn() {
        java.lang.Object ref = environmentCrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          environmentCrn_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
       * implies that the provisioning service has consented to the use of this agent to target backend services
       * outside the host it is deployed on.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return The bytes for environmentCrn.
       */
      public com.google.protobuf.ByteString
          getEnvironmentCrnBytes() {
        java.lang.Object ref = environmentCrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          environmentCrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
       * implies that the provisioning service has consented to the use of this agent to target backend services
       * outside the host it is deployed on.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @param value The environmentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setEnvironmentCrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        environmentCrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
       * implies that the provisioning service has consented to the use of this agent to target backend services
       * outside the host it is deployed on.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearEnvironmentCrn() {
        
        environmentCrn_ = getDefaultInstance().getEnvironmentCrn();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * CRN of the environment this agent is going to be deployed in. Having the environmentCrn set here
       * implies that the provisioning service has consented to the use of this agent to target backend services
       * outside the host it is deployed on.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @param value The bytes for environmentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setEnvironmentCrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        environmentCrn_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.LazyStringList certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureCertificatesIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          certificates_ = new com.google.protobuf.LazyStringArrayList(certificates_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return A list containing the certificates.
       */
      public com.google.protobuf.ProtocolStringList
          getCertificatesList() {
        return certificates_.getUnmodifiableView();
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return The count of certificates.
       */
      public int getCertificatesCount() {
        return certificates_.size();
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param index The index of the element to return.
       * @return The certificates at the given index.
       */
      public java.lang.String getCertificates(int index) {
        return certificates_.get(index);
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param index The index of the value to return.
       * @return The bytes of the certificates at the given index.
       */
      public com.google.protobuf.ByteString
          getCertificatesBytes(int index) {
        return certificates_.getByteString(index);
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param index The index to set the value at.
       * @param value The certificates to set.
       * @return This builder for chaining.
       */
      public Builder setCertificates(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCertificatesIsMutable();
        certificates_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The certificates to add.
       * @return This builder for chaining.
       */
      public Builder addCertificates(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureCertificatesIsMutable();
        certificates_.add(value);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param values The certificates to add.
       * @return This builder for chaining.
       */
      public Builder addAllCertificates(
          java.lang.Iterable<java.lang.String> values) {
        ensureCertificatesIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, certificates_);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearCertificates() {
        certificates_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Generated certificate and the trust chain for agent
       * </pre>
       *
       * <code>repeated string certificates = 5 [(.options.FieldExtension.skipLogging) = true];</code>
       * @param value The bytes of the certificates to add.
       * @return This builder for chaining.
       */
      public Builder addCertificatesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureCertificatesIsMutable();
        certificates_.add(value);
        onChanged();
        return this;
      }

      private java.lang.Object accessKeyId_ = "";
      /**
       * <pre>
       * The access key ID for the machine user
       * </pre>
       *
       * <code>string accessKeyId = 6;</code>
       * @return The accessKeyId.
       */
      public java.lang.String getAccessKeyId() {
        java.lang.Object ref = accessKeyId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          accessKeyId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * The access key ID for the machine user
       * </pre>
       *
       * <code>string accessKeyId = 6;</code>
       * @return The bytes for accessKeyId.
       */
      public com.google.protobuf.ByteString
          getAccessKeyIdBytes() {
        java.lang.Object ref = accessKeyId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          accessKeyId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * The access key ID for the machine user
       * </pre>
       *
       * <code>string accessKeyId = 6;</code>
       * @param value The accessKeyId to set.
       * @return This builder for chaining.
       */
      public Builder setAccessKeyId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        accessKeyId_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The access key ID for the machine user
       * </pre>
       *
       * <code>string accessKeyId = 6;</code>
       * @return This builder for chaining.
       */
      public Builder clearAccessKeyId() {
        
        accessKeyId_ = getDefaultInstance().getAccessKeyId();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The access key ID for the machine user
       * </pre>
       *
       * <code>string accessKeyId = 6;</code>
       * @param value The bytes for accessKeyId to set.
       * @return This builder for chaining.
       */
      public Builder setAccessKeyIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        accessKeyId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object encipheredAccessKey_ = "";
      /**
       * <pre>
       * The access key is the private key for the machine user. This is an Ed25519 private key and is
       * 32 bytes encoded in base64 that should be used to sign requests.
       * </pre>
       *
       * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
       * @return The encipheredAccessKey.
       */
      public java.lang.String getEncipheredAccessKey() {
        java.lang.Object ref = encipheredAccessKey_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          encipheredAccessKey_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * The access key is the private key for the machine user. This is an Ed25519 private key and is
       * 32 bytes encoded in base64 that should be used to sign requests.
       * </pre>
       *
       * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
       * @return The bytes for encipheredAccessKey.
       */
      public com.google.protobuf.ByteString
          getEncipheredAccessKeyBytes() {
        java.lang.Object ref = encipheredAccessKey_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          encipheredAccessKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * The access key is the private key for the machine user. This is an Ed25519 private key and is
       * 32 bytes encoded in base64 that should be used to sign requests.
       * </pre>
       *
       * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
       * @param value The encipheredAccessKey to set.
       * @return This builder for chaining.
       */
      public Builder setEncipheredAccessKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        encipheredAccessKey_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The access key is the private key for the machine user. This is an Ed25519 private key and is
       * 32 bytes encoded in base64 that should be used to sign requests.
       * </pre>
       *
       * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearEncipheredAccessKey() {
        
        encipheredAccessKey_ = getDefaultInstance().getEncipheredAccessKey();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The access key is the private key for the machine user. This is an Ed25519 private key and is
       * 32 bytes encoded in base64 that should be used to sign requests.
       * </pre>
       *
       * <code>string encipheredAccessKey = 7 [(.options.FieldExtension.sensitive) = true];</code>
       * @param value The bytes for encipheredAccessKey to set.
       * @return This builder for chaining.
       */
      public Builder setEncipheredAccessKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        encipheredAccessKey_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object initialisationVector_ = "";
      /**
       * <pre>
       * The initialisationVector used to encrypt the access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
       * @return The initialisationVector.
       */
      public java.lang.String getInitialisationVector() {
        java.lang.Object ref = initialisationVector_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          initialisationVector_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * The initialisationVector used to encrypt the access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
       * @return The bytes for initialisationVector.
       */
      public com.google.protobuf.ByteString
          getInitialisationVectorBytes() {
        java.lang.Object ref = initialisationVector_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          initialisationVector_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * The initialisationVector used to encrypt the access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
       * @param value The initialisationVector to set.
       * @return This builder for chaining.
       */
      public Builder setInitialisationVector(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        initialisationVector_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The initialisationVector used to encrypt the access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearInitialisationVector() {
        
        initialisationVector_ = getDefaultInstance().getInitialisationVector();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The initialisationVector used to encrypt the access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string initialisationVector = 8 [(.options.FieldExtension.sensitive) = true];</code>
       * @param value The bytes for initialisationVector to set.
       * @return This builder for chaining.
       */
      public Builder setInitialisationVectorBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        initialisationVector_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object hmacForPrivateKey_ = "";
      /**
       * <pre>
       * The mac calculated for the encrypted access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
       * @return The hmacForPrivateKey.
       */
      public java.lang.String getHmacForPrivateKey() {
        java.lang.Object ref = hmacForPrivateKey_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          hmacForPrivateKey_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * The mac calculated for the encrypted access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
       * @return The bytes for hmacForPrivateKey.
       */
      public com.google.protobuf.ByteString
          getHmacForPrivateKeyBytes() {
        java.lang.Object ref = hmacForPrivateKey_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          hmacForPrivateKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * The mac calculated for the encrypted access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
       * @param value The hmacForPrivateKey to set.
       * @return This builder for chaining.
       */
      public Builder setHmacForPrivateKey(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        hmacForPrivateKey_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The mac calculated for the encrypted access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
       * @return This builder for chaining.
       */
      public Builder clearHmacForPrivateKey() {
        
        hmacForPrivateKey_ = getDefaultInstance().getHmacForPrivateKey();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The mac calculated for the encrypted access key.
       * Only available for AES256 algorithm.
       * </pre>
       *
       * <code>string hmacForPrivateKey = 9 [(.options.FieldExtension.sensitive) = true];</code>
       * @param value The bytes for hmacForPrivateKey to set.
       * @return This builder for chaining.
       */
      public Builder setHmacForPrivateKeyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        hmacForPrivateKey_ = 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:clusterconnectivitymanagementv2.InvertingProxyAgent)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.InvertingProxyAgent)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<InvertingProxyAgent>
        PARSER = new com.google.protobuf.AbstractParser<InvertingProxyAgent>() {
      @java.lang.Override
      public InvertingProxyAgent parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<InvertingProxyAgent> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<InvertingProxyAgent> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ListAgentsRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.ListAgentsRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>int32 pageSize = 1;</code>
     * @return The pageSize.
     */
    int getPageSize();

    /**
     * <code>.paging.PageToken pageToken = 2;</code>
     * @return Whether the pageToken field is set.
     */
    boolean hasPageToken();
    /**
     * <code>.paging.PageToken pageToken = 2;</code>
     * @return The pageToken.
     */
    com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken getPageToken();
    /**
     * <code>.paging.PageToken pageToken = 2;</code>
     */
    com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder getPageTokenOrBuilder();

    /**
     * <pre>
     * If an accountId is passed-in, all agents belonging to this accountId would be returned.
     * </pre>
     *
     * <code>string accountId = 3;</code>
     * @return Whether the accountId field is set.
     */
    boolean hasAccountId();
    /**
     * <pre>
     * If an accountId is passed-in, all agents belonging to this accountId would be returned.
     * </pre>
     *
     * <code>string accountId = 3;</code>
     * @return The accountId.
     */
    java.lang.String getAccountId();
    /**
     * <pre>
     * If an accountId is passed-in, all agents belonging to this accountId would be returned.
     * </pre>
     *
     * <code>string accountId = 3;</code>
     * @return The bytes for accountId.
     */
    com.google.protobuf.ByteString
        getAccountIdBytes();

    /**
     * <pre>
     * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return Whether the environmentCrn field is set.
     */
    boolean hasEnvironmentCrn();
    /**
     * <pre>
     * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The environmentCrn.
     */
    java.lang.String getEnvironmentCrn();
    /**
     * <pre>
     * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The bytes for environmentCrn.
     */
    com.google.protobuf.ByteString
        getEnvironmentCrnBytes();

    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.FilterOneofCase getFilterOneofCase();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.ListAgentsRequest}
   */
  public static final class ListAgentsRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.ListAgentsRequest)
      ListAgentsRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ListAgentsRequest.newBuilder() to construct.
    private ListAgentsRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ListAgentsRequest() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ListAgentsRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.Builder.class);
    }

    private int filterOneofCase_ = 0;
    private java.lang.Object filterOneof_;
    public enum FilterOneofCase
        implements com.google.protobuf.Internal.EnumLite,
            com.google.protobuf.AbstractMessage.InternalOneOfEnum {
      ACCOUNTID(3),
      ENVIRONMENTCRN(4),
      FILTERONEOF_NOT_SET(0);
      private final int value;
      private FilterOneofCase(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 FilterOneofCase valueOf(int value) {
        return forNumber(value);
      }

      public static FilterOneofCase forNumber(int value) {
        switch (value) {
          case 3: return ACCOUNTID;
          case 4: return ENVIRONMENTCRN;
          case 0: return FILTERONEOF_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public FilterOneofCase
    getFilterOneofCase() {
      return FilterOneofCase.forNumber(
          filterOneofCase_);
    }

    public static final int PAGESIZE_FIELD_NUMBER = 1;
    private int pageSize_;
    /**
     * <code>int32 pageSize = 1;</code>
     * @return The pageSize.
     */
    @java.lang.Override
    public int getPageSize() {
      return pageSize_;
    }

    public static final int PAGETOKEN_FIELD_NUMBER = 2;
    private com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken pageToken_;
    /**
     * <code>.paging.PageToken pageToken = 2;</code>
     * @return Whether the pageToken field is set.
     */
    @java.lang.Override
    public boolean hasPageToken() {
      return pageToken_ != null;
    }
    /**
     * <code>.paging.PageToken pageToken = 2;</code>
     * @return The pageToken.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken getPageToken() {
      return pageToken_ == null ? com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.getDefaultInstance() : pageToken_;
    }
    /**
     * <code>.paging.PageToken pageToken = 2;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder getPageTokenOrBuilder() {
      return getPageToken();
    }

    public static final int ACCOUNTID_FIELD_NUMBER = 3;
    /**
     * <pre>
     * If an accountId is passed-in, all agents belonging to this accountId would be returned.
     * </pre>
     *
     * <code>string accountId = 3;</code>
     * @return Whether the accountId field is set.
     */
    public boolean hasAccountId() {
      return filterOneofCase_ == 3;
    }
    /**
     * <pre>
     * If an accountId is passed-in, all agents belonging to this accountId would be returned.
     * </pre>
     *
     * <code>string accountId = 3;</code>
     * @return The accountId.
     */
    public java.lang.String getAccountId() {
      java.lang.Object ref = "";
      if (filterOneofCase_ == 3) {
        ref = filterOneof_;
      }
      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 (filterOneofCase_ == 3) {
          filterOneof_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * If an accountId is passed-in, all agents belonging to this accountId would be returned.
     * </pre>
     *
     * <code>string accountId = 3;</code>
     * @return The bytes for accountId.
     */
    public com.google.protobuf.ByteString
        getAccountIdBytes() {
      java.lang.Object ref = "";
      if (filterOneofCase_ == 3) {
        ref = filterOneof_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (filterOneofCase_ == 3) {
          filterOneof_ = b;
        }
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ENVIRONMENTCRN_FIELD_NUMBER = 4;
    /**
     * <pre>
     * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return Whether the environmentCrn field is set.
     */
    public boolean hasEnvironmentCrn() {
      return filterOneofCase_ == 4;
    }
    /**
     * <pre>
     * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The environmentCrn.
     */
    public java.lang.String getEnvironmentCrn() {
      java.lang.Object ref = "";
      if (filterOneofCase_ == 4) {
        ref = filterOneof_;
      }
      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 (filterOneofCase_ == 4) {
          filterOneof_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
     * </pre>
     *
     * <code>string environmentCrn = 4;</code>
     * @return The bytes for environmentCrn.
     */
    public com.google.protobuf.ByteString
        getEnvironmentCrnBytes() {
      java.lang.Object ref = "";
      if (filterOneofCase_ == 4) {
        ref = filterOneof_;
      }
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        if (filterOneofCase_ == 4) {
          filterOneof_ = 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 (pageSize_ != 0) {
        output.writeInt32(1, pageSize_);
      }
      if (pageToken_ != null) {
        output.writeMessage(2, getPageToken());
      }
      if (filterOneofCase_ == 3) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, filterOneof_);
      }
      if (filterOneofCase_ == 4) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, filterOneof_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (pageSize_ != 0) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, pageSize_);
      }
      if (pageToken_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, getPageToken());
      }
      if (filterOneofCase_ == 3) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, filterOneof_);
      }
      if (filterOneofCase_ == 4) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, filterOneof_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest) obj;

      if (getPageSize()
          != other.getPageSize()) return false;
      if (hasPageToken() != other.hasPageToken()) return false;
      if (hasPageToken()) {
        if (!getPageToken()
            .equals(other.getPageToken())) return false;
      }
      if (!getFilterOneofCase().equals(other.getFilterOneofCase())) return false;
      switch (filterOneofCase_) {
        case 3:
          if (!getAccountId()
              .equals(other.getAccountId())) return false;
          break;
        case 4:
          if (!getEnvironmentCrn()
              .equals(other.getEnvironmentCrn())) return false;
          break;
        case 0:
        default:
      }
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + PAGESIZE_FIELD_NUMBER;
      hash = (53 * hash) + getPageSize();
      if (hasPageToken()) {
        hash = (37 * hash) + PAGETOKEN_FIELD_NUMBER;
        hash = (53 * hash) + getPageToken().hashCode();
      }
      switch (filterOneofCase_) {
        case 3:
          hash = (37 * hash) + ACCOUNTID_FIELD_NUMBER;
          hash = (53 * hash) + getAccountId().hashCode();
          break;
        case 4:
          hash = (37 * hash) + ENVIRONMENTCRN_FIELD_NUMBER;
          hash = (53 * hash) + getEnvironmentCrn().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest 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 clusterconnectivitymanagementv2.ListAgentsRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.ListAgentsRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        pageSize_ = 0;

        if (pageTokenBuilder_ == null) {
          pageToken_ = null;
        } else {
          pageToken_ = null;
          pageTokenBuilder_ = null;
        }
        filterOneofCase_ = 0;
        filterOneof_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest(this);
        result.pageSize_ = pageSize_;
        if (pageTokenBuilder_ == null) {
          result.pageToken_ = pageToken_;
        } else {
          result.pageToken_ = pageTokenBuilder_.build();
        }
        if (filterOneofCase_ == 3) {
          result.filterOneof_ = filterOneof_;
        }
        if (filterOneofCase_ == 4) {
          result.filterOneof_ = filterOneof_;
        }
        result.filterOneofCase_ = filterOneofCase_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest.getDefaultInstance()) return this;
        if (other.getPageSize() != 0) {
          setPageSize(other.getPageSize());
        }
        if (other.hasPageToken()) {
          mergePageToken(other.getPageToken());
        }
        switch (other.getFilterOneofCase()) {
          case ACCOUNTID: {
            filterOneofCase_ = 3;
            filterOneof_ = other.filterOneof_;
            onChanged();
            break;
          }
          case ENVIRONMENTCRN: {
            filterOneofCase_ = 4;
            filterOneof_ = other.filterOneof_;
            onChanged();
            break;
          }
          case FILTERONEOF_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 8: {
                pageSize_ = input.readInt32();

                break;
              } // case 8
              case 18: {
                input.readMessage(
                    getPageTokenFieldBuilder().getBuilder(),
                    extensionRegistry);

                break;
              } // case 18
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
                filterOneofCase_ = 3;
                filterOneof_ = s;
                break;
              } // case 26
              case 34: {
                java.lang.String s = input.readStringRequireUtf8();
                filterOneofCase_ = 4;
                filterOneof_ = s;
                break;
              } // case 34
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }
      private int filterOneofCase_ = 0;
      private java.lang.Object filterOneof_;
      public FilterOneofCase
          getFilterOneofCase() {
        return FilterOneofCase.forNumber(
            filterOneofCase_);
      }

      public Builder clearFilterOneof() {
        filterOneofCase_ = 0;
        filterOneof_ = null;
        onChanged();
        return this;
      }


      private int pageSize_ ;
      /**
       * <code>int32 pageSize = 1;</code>
       * @return The pageSize.
       */
      @java.lang.Override
      public int getPageSize() {
        return pageSize_;
      }
      /**
       * <code>int32 pageSize = 1;</code>
       * @param value The pageSize to set.
       * @return This builder for chaining.
       */
      public Builder setPageSize(int value) {
        
        pageSize_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>int32 pageSize = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearPageSize() {
        
        pageSize_ = 0;
        onChanged();
        return this;
      }

      private com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken pageToken_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken, com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder, com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder> pageTokenBuilder_;
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       * @return Whether the pageToken field is set.
       */
      public boolean hasPageToken() {
        return pageTokenBuilder_ != null || pageToken_ != null;
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       * @return The pageToken.
       */
      public com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken getPageToken() {
        if (pageTokenBuilder_ == null) {
          return pageToken_ == null ? com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.getDefaultInstance() : pageToken_;
        } else {
          return pageTokenBuilder_.getMessage();
        }
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      public Builder setPageToken(com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken value) {
        if (pageTokenBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          pageToken_ = value;
          onChanged();
        } else {
          pageTokenBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      public Builder setPageToken(
          com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder builderForValue) {
        if (pageTokenBuilder_ == null) {
          pageToken_ = builderForValue.build();
          onChanged();
        } else {
          pageTokenBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      public Builder mergePageToken(com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken value) {
        if (pageTokenBuilder_ == null) {
          if (pageToken_ != null) {
            pageToken_ =
              com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.newBuilder(pageToken_).mergeFrom(value).buildPartial();
          } else {
            pageToken_ = value;
          }
          onChanged();
        } else {
          pageTokenBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      public Builder clearPageToken() {
        if (pageTokenBuilder_ == null) {
          pageToken_ = null;
          onChanged();
        } else {
          pageToken_ = null;
          pageTokenBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      public com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder getPageTokenBuilder() {
        
        onChanged();
        return getPageTokenFieldBuilder().getBuilder();
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      public com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder getPageTokenOrBuilder() {
        if (pageTokenBuilder_ != null) {
          return pageTokenBuilder_.getMessageOrBuilder();
        } else {
          return pageToken_ == null ?
              com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.getDefaultInstance() : pageToken_;
        }
      }
      /**
       * <code>.paging.PageToken pageToken = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken, com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder, com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder> 
          getPageTokenFieldBuilder() {
        if (pageTokenBuilder_ == null) {
          pageTokenBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken, com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder, com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder>(
                  getPageToken(),
                  getParentForChildren(),
                  isClean());
          pageToken_ = null;
        }
        return pageTokenBuilder_;
      }

      /**
       * <pre>
       * If an accountId is passed-in, all agents belonging to this accountId would be returned.
       * </pre>
       *
       * <code>string accountId = 3;</code>
       * @return Whether the accountId field is set.
       */
      @java.lang.Override
      public boolean hasAccountId() {
        return filterOneofCase_ == 3;
      }
      /**
       * <pre>
       * If an accountId is passed-in, all agents belonging to this accountId would be returned.
       * </pre>
       *
       * <code>string accountId = 3;</code>
       * @return The accountId.
       */
      @java.lang.Override
      public java.lang.String getAccountId() {
        java.lang.Object ref = "";
        if (filterOneofCase_ == 3) {
          ref = filterOneof_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (filterOneofCase_ == 3) {
            filterOneof_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * If an accountId is passed-in, all agents belonging to this accountId would be returned.
       * </pre>
       *
       * <code>string accountId = 3;</code>
       * @return The bytes for accountId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getAccountIdBytes() {
        java.lang.Object ref = "";
        if (filterOneofCase_ == 3) {
          ref = filterOneof_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (filterOneofCase_ == 3) {
            filterOneof_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * If an accountId is passed-in, all agents belonging to this accountId would be returned.
       * </pre>
       *
       * <code>string accountId = 3;</code>
       * @param value The accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  filterOneofCase_ = 3;
        filterOneof_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * If an accountId is passed-in, all agents belonging to this accountId would be returned.
       * </pre>
       *
       * <code>string accountId = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearAccountId() {
        if (filterOneofCase_ == 3) {
          filterOneofCase_ = 0;
          filterOneof_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * <pre>
       * If an accountId is passed-in, all agents belonging to this accountId would be returned.
       * </pre>
       *
       * <code>string accountId = 3;</code>
       * @param value The bytes for accountId to set.
       * @return This builder for chaining.
       */
      public Builder setAccountIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        filterOneofCase_ = 3;
        filterOneof_ = value;
        onChanged();
        return this;
      }

      /**
       * <pre>
       * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return Whether the environmentCrn field is set.
       */
      @java.lang.Override
      public boolean hasEnvironmentCrn() {
        return filterOneofCase_ == 4;
      }
      /**
       * <pre>
       * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return The environmentCrn.
       */
      @java.lang.Override
      public java.lang.String getEnvironmentCrn() {
        java.lang.Object ref = "";
        if (filterOneofCase_ == 4) {
          ref = filterOneof_;
        }
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (filterOneofCase_ == 4) {
            filterOneof_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return The bytes for environmentCrn.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getEnvironmentCrnBytes() {
        java.lang.Object ref = "";
        if (filterOneofCase_ == 4) {
          ref = filterOneof_;
        }
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          if (filterOneofCase_ == 4) {
            filterOneof_ = b;
          }
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @param value The environmentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setEnvironmentCrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  filterOneofCase_ = 4;
        filterOneof_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @return This builder for chaining.
       */
      public Builder clearEnvironmentCrn() {
        if (filterOneofCase_ == 4) {
          filterOneofCase_ = 0;
          filterOneof_ = null;
          onChanged();
        }
        return this;
      }
      /**
       * <pre>
       * If an environmentCrn is passed-in, all agents belonging to this environmnent would be returned.
       * </pre>
       *
       * <code>string environmentCrn = 4;</code>
       * @param value The bytes for environmentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setEnvironmentCrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        filterOneofCase_ = 4;
        filterOneof_ = 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:clusterconnectivitymanagementv2.ListAgentsRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.ListAgentsRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ListAgentsRequest>
        PARSER = new com.google.protobuf.AbstractParser<ListAgentsRequest>() {
      @java.lang.Override
      public ListAgentsRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<ListAgentsRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ListAgentsRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ListAgentsResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.ListAgentsResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.paging.PageToken nextPageToken = 1;</code>
     * @return Whether the nextPageToken field is set.
     */
    boolean hasNextPageToken();
    /**
     * <code>.paging.PageToken nextPageToken = 1;</code>
     * @return The nextPageToken.
     */
    com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken getNextPageToken();
    /**
     * <code>.paging.PageToken nextPageToken = 1;</code>
     */
    com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder getNextPageTokenOrBuilder();

    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    java.util.List<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent> 
        getAgentsList();
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getAgents(int index);
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    int getAgentsCount();
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    java.util.List<? extends com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> 
        getAgentsOrBuilderList();
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getAgentsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.ListAgentsResponse}
   */
  public static final class ListAgentsResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.ListAgentsResponse)
      ListAgentsResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ListAgentsResponse.newBuilder() to construct.
    private ListAgentsResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ListAgentsResponse() {
      agents_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new ListAgentsResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.Builder.class);
    }

    public static final int NEXTPAGETOKEN_FIELD_NUMBER = 1;
    private com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken nextPageToken_;
    /**
     * <code>.paging.PageToken nextPageToken = 1;</code>
     * @return Whether the nextPageToken field is set.
     */
    @java.lang.Override
    public boolean hasNextPageToken() {
      return nextPageToken_ != null;
    }
    /**
     * <code>.paging.PageToken nextPageToken = 1;</code>
     * @return The nextPageToken.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken getNextPageToken() {
      return nextPageToken_ == null ? com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.getDefaultInstance() : nextPageToken_;
    }
    /**
     * <code>.paging.PageToken nextPageToken = 1;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder getNextPageTokenOrBuilder() {
      return getNextPageToken();
    }

    public static final int AGENTS_FIELD_NUMBER = 2;
    private java.util.List<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent> agents_;
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    @java.lang.Override
    public java.util.List<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent> getAgentsList() {
      return agents_;
    }
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    @java.lang.Override
    public java.util.List<? extends com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> 
        getAgentsOrBuilderList() {
      return agents_;
    }
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    @java.lang.Override
    public int getAgentsCount() {
      return agents_.size();
    }
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getAgents(int index) {
      return agents_.get(index);
    }
    /**
     * <pre>
     * List of all agents (matching the optional filter if supplied)
     * </pre>
     *
     * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getAgentsOrBuilder(
        int index) {
      return agents_.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 (nextPageToken_ != null) {
        output.writeMessage(1, getNextPageToken());
      }
      for (int i = 0; i < agents_.size(); i++) {
        output.writeMessage(2, agents_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (nextPageToken_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getNextPageToken());
      }
      for (int i = 0; i < agents_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, agents_.get(i));
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse) obj;

      if (hasNextPageToken() != other.hasNextPageToken()) return false;
      if (hasNextPageToken()) {
        if (!getNextPageToken()
            .equals(other.getNextPageToken())) return false;
      }
      if (!getAgentsList()
          .equals(other.getAgentsList())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasNextPageToken()) {
        hash = (37 * hash) + NEXTPAGETOKEN_FIELD_NUMBER;
        hash = (53 * hash) + getNextPageToken().hashCode();
      }
      if (getAgentsCount() > 0) {
        hash = (37 * hash) + AGENTS_FIELD_NUMBER;
        hash = (53 * hash) + getAgentsList().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse 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 clusterconnectivitymanagementv2.ListAgentsResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.ListAgentsResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (nextPageTokenBuilder_ == null) {
          nextPageToken_ = null;
        } else {
          nextPageToken_ = null;
          nextPageTokenBuilder_ = null;
        }
        if (agentsBuilder_ == null) {
          agents_ = java.util.Collections.emptyList();
        } else {
          agents_ = null;
          agentsBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse(this);
        int from_bitField0_ = bitField0_;
        if (nextPageTokenBuilder_ == null) {
          result.nextPageToken_ = nextPageToken_;
        } else {
          result.nextPageToken_ = nextPageTokenBuilder_.build();
        }
        if (agentsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) != 0)) {
            agents_ = java.util.Collections.unmodifiableList(agents_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.agents_ = agents_;
        } else {
          result.agents_ = agentsBuilder_.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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse.getDefaultInstance()) return this;
        if (other.hasNextPageToken()) {
          mergeNextPageToken(other.getNextPageToken());
        }
        if (agentsBuilder_ == null) {
          if (!other.agents_.isEmpty()) {
            if (agents_.isEmpty()) {
              agents_ = other.agents_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureAgentsIsMutable();
              agents_.addAll(other.agents_);
            }
            onChanged();
          }
        } else {
          if (!other.agents_.isEmpty()) {
            if (agentsBuilder_.isEmpty()) {
              agentsBuilder_.dispose();
              agentsBuilder_ = null;
              agents_ = other.agents_;
              bitField0_ = (bitField0_ & ~0x00000001);
              agentsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getAgentsFieldBuilder() : null;
            } else {
              agentsBuilder_.addAllMessages(other.agents_);
            }
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                input.readMessage(
                    getNextPageTokenFieldBuilder().getBuilder(),
                    extensionRegistry);

                break;
              } // case 10
              case 18: {
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent m =
                    input.readMessage(
                        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.parser(),
                        extensionRegistry);
                if (agentsBuilder_ == null) {
                  ensureAgentsIsMutable();
                  agents_.add(m);
                } else {
                  agentsBuilder_.addMessage(m);
                }
                break;
              } // case 18
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }
      private int bitField0_;

      private com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken nextPageToken_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken, com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder, com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder> nextPageTokenBuilder_;
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       * @return Whether the nextPageToken field is set.
       */
      public boolean hasNextPageToken() {
        return nextPageTokenBuilder_ != null || nextPageToken_ != null;
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       * @return The nextPageToken.
       */
      public com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken getNextPageToken() {
        if (nextPageTokenBuilder_ == null) {
          return nextPageToken_ == null ? com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.getDefaultInstance() : nextPageToken_;
        } else {
          return nextPageTokenBuilder_.getMessage();
        }
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      public Builder setNextPageToken(com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken value) {
        if (nextPageTokenBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          nextPageToken_ = value;
          onChanged();
        } else {
          nextPageTokenBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      public Builder setNextPageToken(
          com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder builderForValue) {
        if (nextPageTokenBuilder_ == null) {
          nextPageToken_ = builderForValue.build();
          onChanged();
        } else {
          nextPageTokenBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      public Builder mergeNextPageToken(com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken value) {
        if (nextPageTokenBuilder_ == null) {
          if (nextPageToken_ != null) {
            nextPageToken_ =
              com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.newBuilder(nextPageToken_).mergeFrom(value).buildPartial();
          } else {
            nextPageToken_ = value;
          }
          onChanged();
        } else {
          nextPageTokenBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      public Builder clearNextPageToken() {
        if (nextPageTokenBuilder_ == null) {
          nextPageToken_ = null;
          onChanged();
        } else {
          nextPageToken_ = null;
          nextPageTokenBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      public com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder getNextPageTokenBuilder() {
        
        onChanged();
        return getNextPageTokenFieldBuilder().getBuilder();
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      public com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder getNextPageTokenOrBuilder() {
        if (nextPageTokenBuilder_ != null) {
          return nextPageTokenBuilder_.getMessageOrBuilder();
        } else {
          return nextPageToken_ == null ?
              com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.getDefaultInstance() : nextPageToken_;
        }
      }
      /**
       * <code>.paging.PageToken nextPageToken = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken, com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder, com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder> 
          getNextPageTokenFieldBuilder() {
        if (nextPageTokenBuilder_ == null) {
          nextPageTokenBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken, com.cloudera.thunderhead.service.common.paging.PagingProto.PageToken.Builder, com.cloudera.thunderhead.service.common.paging.PagingProto.PageTokenOrBuilder>(
                  getNextPageToken(),
                  getParentForChildren(),
                  isClean());
          nextPageToken_ = null;
        }
        return nextPageTokenBuilder_;
      }

      private java.util.List<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent> agents_ =
        java.util.Collections.emptyList();
      private void ensureAgentsIsMutable() {
        if (!((bitField0_ & 0x00000001) != 0)) {
          agents_ = new java.util.ArrayList<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent>(agents_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> agentsBuilder_;

      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public java.util.List<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent> getAgentsList() {
        if (agentsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(agents_);
        } else {
          return agentsBuilder_.getMessageList();
        }
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public int getAgentsCount() {
        if (agentsBuilder_ == null) {
          return agents_.size();
        } else {
          return agentsBuilder_.getCount();
        }
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getAgents(int index) {
        if (agentsBuilder_ == null) {
          return agents_.get(index);
        } else {
          return agentsBuilder_.getMessage(index);
        }
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder setAgents(
          int index, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (agentsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAgentsIsMutable();
          agents_.set(index, value);
          onChanged();
        } else {
          agentsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder setAgents(
          int index, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder builderForValue) {
        if (agentsBuilder_ == null) {
          ensureAgentsIsMutable();
          agents_.set(index, builderForValue.build());
          onChanged();
        } else {
          agentsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder addAgents(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (agentsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAgentsIsMutable();
          agents_.add(value);
          onChanged();
        } else {
          agentsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder addAgents(
          int index, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (agentsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureAgentsIsMutable();
          agents_.add(index, value);
          onChanged();
        } else {
          agentsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder addAgents(
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder builderForValue) {
        if (agentsBuilder_ == null) {
          ensureAgentsIsMutable();
          agents_.add(builderForValue.build());
          onChanged();
        } else {
          agentsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder addAgents(
          int index, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder builderForValue) {
        if (agentsBuilder_ == null) {
          ensureAgentsIsMutable();
          agents_.add(index, builderForValue.build());
          onChanged();
        } else {
          agentsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder addAllAgents(
          java.lang.Iterable<? extends com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent> values) {
        if (agentsBuilder_ == null) {
          ensureAgentsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, agents_);
          onChanged();
        } else {
          agentsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder clearAgents() {
        if (agentsBuilder_ == null) {
          agents_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          agentsBuilder_.clear();
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public Builder removeAgents(int index) {
        if (agentsBuilder_ == null) {
          ensureAgentsIsMutable();
          agents_.remove(index);
          onChanged();
        } else {
          agentsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder getAgentsBuilder(
          int index) {
        return getAgentsFieldBuilder().getBuilder(index);
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getAgentsOrBuilder(
          int index) {
        if (agentsBuilder_ == null) {
          return agents_.get(index);  } else {
          return agentsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public java.util.List<? extends com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> 
           getAgentsOrBuilderList() {
        if (agentsBuilder_ != null) {
          return agentsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(agents_);
        }
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder addAgentsBuilder() {
        return getAgentsFieldBuilder().addBuilder(
            com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance());
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder addAgentsBuilder(
          int index) {
        return getAgentsFieldBuilder().addBuilder(
            index, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance());
      }
      /**
       * <pre>
       * List of all agents (matching the optional filter if supplied)
       * </pre>
       *
       * <code>repeated .clusterconnectivitymanagementv2.InvertingProxyAgent agents = 2;</code>
       */
      public java.util.List<com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder> 
           getAgentsBuilderList() {
        return getAgentsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> 
          getAgentsFieldBuilder() {
        if (agentsBuilder_ == null) {
          agentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder>(
                  agents_,
                  ((bitField0_ & 0x00000001) != 0),
                  getParentForChildren(),
                  isClean());
          agents_ = null;
        }
        return agentsBuilder_;
      }
      @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:clusterconnectivitymanagementv2.ListAgentsResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.ListAgentsResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ListAgentsResponse>
        PARSER = new com.google.protobuf.AbstractParser<ListAgentsResponse>() {
      @java.lang.Override
      public ListAgentsResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<ListAgentsResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ListAgentsResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.ListAgentsResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface RotateAgentAccessKeyRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <pre>
     * The agentCrn
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The agentCrn.
     */
    java.lang.String getAgentCrn();
    /**
     * <pre>
     * The agentCrn
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The bytes for agentCrn.
     */
    com.google.protobuf.ByteString
        getAgentCrnBytes();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest}
   */
  public static final class RotateAgentAccessKeyRequest extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest)
      RotateAgentAccessKeyRequestOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use RotateAgentAccessKeyRequest.newBuilder() to construct.
    private RotateAgentAccessKeyRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private RotateAgentAccessKeyRequest() {
      agentCrn_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new RotateAgentAccessKeyRequest();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.Builder.class);
    }

    public static final int AGENTCRN_FIELD_NUMBER = 1;
    private volatile java.lang.Object agentCrn_;
    /**
     * <pre>
     * The agentCrn
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The agentCrn.
     */
    @java.lang.Override
    public java.lang.String getAgentCrn() {
      java.lang.Object ref = agentCrn_;
      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();
        agentCrn_ = s;
        return s;
      }
    }
    /**
     * <pre>
     * The agentCrn
     * </pre>
     *
     * <code>string agentCrn = 1;</code>
     * @return The bytes for agentCrn.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getAgentCrnBytes() {
      java.lang.Object ref = agentCrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        agentCrn_ = 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(agentCrn_)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, agentCrn_);
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(agentCrn_)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, agentCrn_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest) obj;

      if (!getAgentCrn()
          .equals(other.getAgentCrn())) return false;
      if (!getUnknownFields().equals(other.getUnknownFields())) 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) + AGENTCRN_FIELD_NUMBER;
      hash = (53 * hash) + getAgentCrn().hashCode();
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest 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 clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequestOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        agentCrn_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest(this);
        result.agentCrn_ = agentCrn_;
        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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest.getDefaultInstance()) return this;
        if (!other.getAgentCrn().isEmpty()) {
          agentCrn_ = other.agentCrn_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                agentCrn_ = input.readStringRequireUtf8();

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private java.lang.Object agentCrn_ = "";
      /**
       * <pre>
       * The agentCrn
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return The agentCrn.
       */
      public java.lang.String getAgentCrn() {
        java.lang.Object ref = agentCrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          agentCrn_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * The agentCrn
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return The bytes for agentCrn.
       */
      public com.google.protobuf.ByteString
          getAgentCrnBytes() {
        java.lang.Object ref = agentCrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          agentCrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * The agentCrn
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @param value The agentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setAgentCrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        agentCrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The agentCrn
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearAgentCrn() {
        
        agentCrn_ = getDefaultInstance().getAgentCrn();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * The agentCrn
       * </pre>
       *
       * <code>string agentCrn = 1;</code>
       * @param value The bytes for agentCrn to set.
       * @return This builder for chaining.
       */
      public Builder setAgentCrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        agentCrn_ = 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:clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.RotateAgentAccessKeyRequest)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<RotateAgentAccessKeyRequest>
        PARSER = new com.google.protobuf.AbstractParser<RotateAgentAccessKeyRequest>() {
      @java.lang.Override
      public RotateAgentAccessKeyRequest parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<RotateAgentAccessKeyRequest> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<RotateAgentAccessKeyRequest> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyRequest getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface RotateAgentAccessKeyResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return Whether the invertingProxyAgent field is set.
     */
    boolean hasInvertingProxyAgent();
    /**
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return The invertingProxyAgent.
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getInvertingProxyAgent();
    /**
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     */
    com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getInvertingProxyAgentOrBuilder();
  }
  /**
   * Protobuf type {@code clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse}
   */
  public static final class RotateAgentAccessKeyResponse extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse)
      RotateAgentAccessKeyResponseOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use RotateAgentAccessKeyResponse.newBuilder() to construct.
    private RotateAgentAccessKeyResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private RotateAgentAccessKeyResponse() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new RotateAgentAccessKeyResponse();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.Builder.class);
    }

    public static final int INVERTINGPROXYAGENT_FIELD_NUMBER = 1;
    private com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent invertingProxyAgent_;
    /**
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return Whether the invertingProxyAgent field is set.
     */
    @java.lang.Override
    public boolean hasInvertingProxyAgent() {
      return invertingProxyAgent_ != null;
    }
    /**
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     * @return The invertingProxyAgent.
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getInvertingProxyAgent() {
      return invertingProxyAgent_ == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance() : invertingProxyAgent_;
    }
    /**
     * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
     */
    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getInvertingProxyAgentOrBuilder() {
      return getInvertingProxyAgent();
    }

    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 (invertingProxyAgent_ != null) {
        output.writeMessage(1, getInvertingProxyAgent());
      }
      getUnknownFields().writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (invertingProxyAgent_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, getInvertingProxyAgent());
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse)) {
        return super.equals(obj);
      }
      com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse other = (com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse) obj;

      if (hasInvertingProxyAgent() != other.hasInvertingProxyAgent()) return false;
      if (hasInvertingProxyAgent()) {
        if (!getInvertingProxyAgent()
            .equals(other.getInvertingProxyAgent())) return false;
      }
      if (!getUnknownFields().equals(other.getUnknownFields())) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasInvertingProxyAgent()) {
        hash = (37 * hash) + INVERTINGPROXYAGENT_FIELD_NUMBER;
        hash = (53 * hash) + getInvertingProxyAgent().hashCode();
      }
      hash = (29 * hash) + getUnknownFields().hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse 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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse 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(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse 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 clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse)
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponseOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.class, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.Builder.class);
      }

      // Construct using com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.newBuilder()
      private Builder() {

      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);

      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgent_ = null;
        } else {
          invertingProxyAgent_ = null;
          invertingProxyAgentBuilder_ = null;
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_descriptor;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse getDefaultInstanceForType() {
        return com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.getDefaultInstance();
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse build() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse buildPartial() {
        com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse result = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse(this);
        if (invertingProxyAgentBuilder_ == null) {
          result.invertingProxyAgent_ = invertingProxyAgent_;
        } else {
          result.invertingProxyAgent_ = invertingProxyAgentBuilder_.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 com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse) {
          return mergeFrom((com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse other) {
        if (other == com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse.getDefaultInstance()) return this;
        if (other.hasInvertingProxyAgent()) {
          mergeInvertingProxyAgent(other.getInvertingProxyAgent());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                input.readMessage(
                    getInvertingProxyAgentFieldBuilder().getBuilder(),
                    extensionRegistry);

                break;
              } // case 10
              default: {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
            } // switch (tag)
          } // while (!done)
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.unwrapIOException();
        } finally {
          onChanged();
        } // finally
        return this;
      }

      private com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent invertingProxyAgent_;
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> invertingProxyAgentBuilder_;
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       * @return Whether the invertingProxyAgent field is set.
       */
      public boolean hasInvertingProxyAgent() {
        return invertingProxyAgentBuilder_ != null || invertingProxyAgent_ != null;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       * @return The invertingProxyAgent.
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent getInvertingProxyAgent() {
        if (invertingProxyAgentBuilder_ == null) {
          return invertingProxyAgent_ == null ? com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance() : invertingProxyAgent_;
        } else {
          return invertingProxyAgentBuilder_.getMessage();
        }
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder setInvertingProxyAgent(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (invertingProxyAgentBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          invertingProxyAgent_ = value;
          onChanged();
        } else {
          invertingProxyAgentBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder setInvertingProxyAgent(
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder builderForValue) {
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgent_ = builderForValue.build();
          onChanged();
        } else {
          invertingProxyAgentBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder mergeInvertingProxyAgent(com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent value) {
        if (invertingProxyAgentBuilder_ == null) {
          if (invertingProxyAgent_ != null) {
            invertingProxyAgent_ =
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.newBuilder(invertingProxyAgent_).mergeFrom(value).buildPartial();
          } else {
            invertingProxyAgent_ = value;
          }
          onChanged();
        } else {
          invertingProxyAgentBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public Builder clearInvertingProxyAgent() {
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgent_ = null;
          onChanged();
        } else {
          invertingProxyAgent_ = null;
          invertingProxyAgentBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder getInvertingProxyAgentBuilder() {
        
        onChanged();
        return getInvertingProxyAgentFieldBuilder().getBuilder();
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder getInvertingProxyAgentOrBuilder() {
        if (invertingProxyAgentBuilder_ != null) {
          return invertingProxyAgentBuilder_.getMessageOrBuilder();
        } else {
          return invertingProxyAgent_ == null ?
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.getDefaultInstance() : invertingProxyAgent_;
        }
      }
      /**
       * <code>.clusterconnectivitymanagementv2.InvertingProxyAgent invertingProxyAgent = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder> 
          getInvertingProxyAgentFieldBuilder() {
        if (invertingProxyAgentBuilder_ == null) {
          invertingProxyAgentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgent.Builder, com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.InvertingProxyAgentOrBuilder>(
                  getInvertingProxyAgent(),
                  getParentForChildren(),
                  isClean());
          invertingProxyAgent_ = null;
        }
        return invertingProxyAgentBuilder_;
      }
      @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:clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse)
    }

    // @@protoc_insertion_point(class_scope:clusterconnectivitymanagementv2.RotateAgentAccessKeyResponse)
    private static final com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse();
    }

    public static com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<RotateAgentAccessKeyResponse>
        PARSER = new com.google.protobuf.AbstractParser<RotateAgentAccessKeyResponse>() {
      @java.lang.Override
      public RotateAgentAccessKeyResponse parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        Builder builder = newBuilder();
        try {
          builder.mergeFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(builder.buildPartial());
        } catch (com.google.protobuf.UninitializedMessageException e) {
          throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(e)
              .setUnfinishedMessage(builder.buildPartial());
        }
        return builder.buildPartial();
      }
    };

    public static com.google.protobuf.Parser<RotateAgentAccessKeyResponse> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<RotateAgentAccessKeyResponse> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.cloudera.thunderhead.service.clusterconnectivitymanagementv2.ClusterConnectivityManagementV2Proto.RotateAgentAccessKeyResponse getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_AES128Parameters_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_AES128Parameters_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_AES256Parameters_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_AES256Parameters_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_InvertingProxy_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_InvertingProxy_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n%clusterconnectivitymanagementv2.proto\022" +
      "\037clusterconnectivitymanagementv2\032\rversio" +
      "n.proto\032\roptions.proto\032\014paging.proto\"5\n " +
      "CreateOrGetInvertingProxyRequest\022\021\n\tacco" +
      "untId\030\001 \001(\t\"l\n!CreateOrGetInvertingProxy" +
      "Response\022G\n\016invertingProxy\030\001 \001(\0132/.clust" +
      "erconnectivitymanagementv2.InvertingProx" +
      "y\"0\n\033RemoveInvertingProxyRequest\022\021\n\tacco" +
      "untId\030\001 \001(\t\"\036\n\034RemoveInvertingProxyRespo" +
      "nse\"\222\002\n\024RegisterAgentRequest\022\021\n\taccountI" +
      "d\030\001 \001(\t\022\022\n\ndomainName\030\002 \001(\t\022\r\n\005keyId\030\003 \001" +
      "(\t\022\026\n\016environmentCrn\030\004 \001(\t\022M\n\020aes128Para" +
      "meters\030\005 \001(\01321.clusterconnectivitymanage" +
      "mentv2.AES128ParametersH\000\022M\n\020aes256Param" +
      "eters\030\006 \001(\01321.clusterconnectivitymanagem" +
      "entv2.AES256ParametersH\000B\016\n\014filter_oneof" +
      "\"\022\n\020AES128Parameters\"#\n\020AES256Parameters" +
      "\022\017\n\007hmacKey\030\001 \001(\t\"j\n\025RegisterAgentRespon" +
      "se\022Q\n\023invertingProxyAgent\030\001 \001(\01324.cluste" +
      "rconnectivitymanagementv2.InvertingProxy" +
      "Agent\"*\n\026UnregisterAgentRequest\022\020\n\010agent" +
      "Crn\030\001 \001(\t\"4\n\037GetAllAgentsCertificatesReq" +
      "uest\022\021\n\taccountId\030\001 \001(\t\">\n GetAllAgentsC" +
      "ertificatesResponse\022\032\n\014certificates\030\001 \003(" +
      "\tB\004\210\265\030\001\"\031\n\027UnregisterAgentResponse\"\355\001\n\016I" +
      "nvertingProxy\022F\n\006status\030\001 \001(\01626.clusterc" +
      "onnectivitymanagementv2.InvertingProxy.S" +
      "tatus\022\020\n\010hostname\030\002 \001(\t\022\026\n\016causeOfFailur" +
      "e\030\003 \001(\t\022\035\n\013certificate\030\004 \001(\tB\010\210\265\030\001\370\265\030\001\022\033" +
      "\n\rcaCertificate\030\005 \001(\tB\004\210\265\030\001\"-\n\006Status\022\014\n" +
      "\010CREATING\020\000\022\t\n\005READY\020\001\022\n\n\006FAILED\020\002\"\233\002\n\023I" +
      "nvertingProxyAgent\022\020\n\010agentCrn\030\001 \001(\t\022\"\n\024" +
      "encipheredPrivateKey\030\002 \001(\tB\004\210\265\030\001\022\035\n\013cert" +
      "ificate\030\003 \001(\tB\010\210\265\030\001\370\265\030\001\022\026\n\016environmentCr" +
      "n\030\004 \001(\t\022\032\n\014certificates\030\005 \003(\tB\004\210\265\030\001\022\023\n\013a" +
      "ccessKeyId\030\006 \001(\t\022!\n\023encipheredAccessKey\030" +
      "\007 \001(\tB\004\200\265\030\001\022\"\n\024initialisationVector\030\010 \001(" +
      "\tB\004\200\265\030\001\022\037\n\021hmacForPrivateKey\030\t \001(\tB\004\200\265\030\001" +
      "\"\212\001\n\021ListAgentsRequest\022\020\n\010pageSize\030\001 \001(\005" +
      "\022$\n\tpageToken\030\002 \001(\0132\021.paging.PageToken\022\023" +
      "\n\taccountId\030\003 \001(\tH\000\022\030\n\016environmentCrn\030\004 " +
      "\001(\tH\000B\016\n\014filter_oneof\"\204\001\n\022ListAgentsResp" +
      "onse\022(\n\rnextPageToken\030\001 \001(\0132\021.paging.Pag" +
      "eToken\022D\n\006agents\030\002 \003(\01324.clusterconnecti" +
      "vitymanagementv2.InvertingProxyAgent\"/\n\033" +
      "RotateAgentAccessKeyRequest\022\020\n\010agentCrn\030" +
      "\001 \001(\t\"q\n\034RotateAgentAccessKeyResponse\022Q\n" +
      "\023invertingProxyAgent\030\001 \001(\01324.clusterconn" +
      "ectivitymanagementv2.InvertingProxyAgent" +
      "2\344\010\n\037ClusterConnectivityManagementV2\022A\n\n" +
      "GetVersion\022\027.version.VersionRequest\032\030.ve" +
      "rsion.VersionResponse\"\000\022\244\001\n\031CreateOrGetI" +
      "nvertingProxy\022A.clusterconnectivitymanag" +
      "ementv2.CreateOrGetInvertingProxyRequest" +
      "\032B.clusterconnectivitymanagementv2.Creat" +
      "eOrGetInvertingProxyResponse\"\000\022\225\001\n\024Remov" +
      "eInvertingProxy\022<.clusterconnectivityman" +
      "agementv2.RemoveInvertingProxyRequest\032=." +
      "clusterconnectivitymanagementv2.RemoveIn" +
      "vertingProxyResponse\"\000\022\200\001\n\rRegisterAgent" +
      "\0225.clusterconnectivitymanagementv2.Regis" +
      "terAgentRequest\0326.clusterconnectivityman" +
      "agementv2.RegisterAgentResponse\"\000\022\206\001\n\017Un" +
      "registerAgent\0227.clusterconnectivitymanag" +
      "ementv2.UnregisterAgentRequest\0328.cluster" +
      "connectivitymanagementv2.UnregisterAgent" +
      "Response\"\000\022w\n\nListAgents\0222.clusterconnec" +
      "tivitymanagementv2.ListAgentsRequest\0323.c" +
      "lusterconnectivitymanagementv2.ListAgent" +
      "sResponse\"\000\022\241\001\n\030GetAllAgentsCertificates" +
      "\022@.clusterconnectivitymanagementv2.GetAl" +
      "lAgentsCertificatesRequest\032A.clusterconn" +
      "ectivitymanagementv2.GetAllAgentsCertifi" +
      "catesResponse\"\000\022\225\001\n\024RotateAgentAccessKey" +
      "\022<.clusterconnectivitymanagementv2.Rotat" +
      "eAgentAccessKeyRequest\032=.clusterconnecti" +
      "vitymanagementv2.RotateAgentAccessKeyRes" +
      "ponse\"\000B\203\001\n@com.cloudera.thunderhead.ser" +
      "vice.clusterconnectivitymanagementv2B$Cl" +
      "usterConnectivityManagementV2ProtoZ\031com/" +
      "cloudera/cdp/protobufb\006proto3"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          com.cloudera.thunderhead.service.common.version.Version.getDescriptor(),
          com.cloudera.thunderhead.service.common.options.Options.getDescriptor(),
          com.cloudera.thunderhead.service.common.paging.PagingProto.getDescriptor(),
        });
    internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyRequest_descriptor,
        new java.lang.String[] { "AccountId", });
    internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_CreateOrGetInvertingProxyResponse_descriptor,
        new java.lang.String[] { "InvertingProxy", });
    internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyRequest_descriptor,
        new java.lang.String[] { "AccountId", });
    internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_RemoveInvertingProxyResponse_descriptor,
        new java.lang.String[] { });
    internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_RegisterAgentRequest_descriptor,
        new java.lang.String[] { "AccountId", "DomainName", "KeyId", "EnvironmentCrn", "Aes128Parameters", "Aes256Parameters", "FilterOneof", });
    internal_static_clusterconnectivitymanagementv2_AES128Parameters_descriptor =
      getDescriptor().getMessageTypes().get(5);
    internal_static_clusterconnectivitymanagementv2_AES128Parameters_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_AES128Parameters_descriptor,
        new java.lang.String[] { });
    internal_static_clusterconnectivitymanagementv2_AES256Parameters_descriptor =
      getDescriptor().getMessageTypes().get(6);
    internal_static_clusterconnectivitymanagementv2_AES256Parameters_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_AES256Parameters_descriptor,
        new java.lang.String[] { "HmacKey", });
    internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_descriptor =
      getDescriptor().getMessageTypes().get(7);
    internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_RegisterAgentResponse_descriptor,
        new java.lang.String[] { "InvertingProxyAgent", });
    internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_descriptor =
      getDescriptor().getMessageTypes().get(8);
    internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_UnregisterAgentRequest_descriptor,
        new java.lang.String[] { "AgentCrn", });
    internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_descriptor =
      getDescriptor().getMessageTypes().get(9);
    internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesRequest_descriptor,
        new java.lang.String[] { "AccountId", });
    internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_descriptor =
      getDescriptor().getMessageTypes().get(10);
    internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_GetAllAgentsCertificatesResponse_descriptor,
        new java.lang.String[] { "Certificates", });
    internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_descriptor =
      getDescriptor().getMessageTypes().get(11);
    internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_UnregisterAgentResponse_descriptor,
        new java.lang.String[] { });
    internal_static_clusterconnectivitymanagementv2_InvertingProxy_descriptor =
      getDescriptor().getMessageTypes().get(12);
    internal_static_clusterconnectivitymanagementv2_InvertingProxy_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_InvertingProxy_descriptor,
        new java.lang.String[] { "Status", "Hostname", "CauseOfFailure", "Certificate", "CaCertificate", });
    internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_descriptor =
      getDescriptor().getMessageTypes().get(13);
    internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_InvertingProxyAgent_descriptor,
        new java.lang.String[] { "AgentCrn", "EncipheredPrivateKey", "Certificate", "EnvironmentCrn", "Certificates", "AccessKeyId", "EncipheredAccessKey", "InitialisationVector", "HmacForPrivateKey", });
    internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_descriptor =
      getDescriptor().getMessageTypes().get(14);
    internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_ListAgentsRequest_descriptor,
        new java.lang.String[] { "PageSize", "PageToken", "AccountId", "EnvironmentCrn", "FilterOneof", });
    internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_descriptor =
      getDescriptor().getMessageTypes().get(15);
    internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_ListAgentsResponse_descriptor,
        new java.lang.String[] { "NextPageToken", "Agents", });
    internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_descriptor =
      getDescriptor().getMessageTypes().get(16);
    internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyRequest_descriptor,
        new java.lang.String[] { "AgentCrn", });
    internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_descriptor =
      getDescriptor().getMessageTypes().get(17);
    internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_clusterconnectivitymanagementv2_RotateAgentAccessKeyResponse_descriptor,
        new java.lang.String[] { "InvertingProxyAgent", });
    com.google.protobuf.ExtensionRegistry registry =
        com.google.protobuf.ExtensionRegistry.newInstance();
    registry.add(com.cloudera.thunderhead.service.common.options.Options.FieldExtension.deprecated);
    registry.add(com.cloudera.thunderhead.service.common.options.Options.FieldExtension.sensitive);
    registry.add(com.cloudera.thunderhead.service.common.options.Options.FieldExtension.skipLogging);
    com.google.protobuf.Descriptors.FileDescriptor
        .internalUpdateFileDescriptor(descriptor, registry);
    com.cloudera.thunderhead.service.common.version.Version.getDescriptor();
    com.cloudera.thunderhead.service.common.options.Options.getDescriptor();
    com.cloudera.thunderhead.service.common.paging.PagingProto.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}
