content: /*
   * Tencent is pleased to support the open source community by making Angel available.
   *
   * Copyright (C) 2017-2018 THL A29 Limited, a Tencent company. All rights reserved.
   *
   * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in
   * compliance with the License. You may obtain a copy of the License at
   *
   * https://opensource.org/licenses/Apache-2.0
   *
   * Unless required by applicable law or agreed to in writing, software distributed under the License
   * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
   * or implied. See the License for the specific language governing permissions and limitations under
   * the License.
   *
   */
  // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: apis/modelmgr/get_model_status.proto
  
  package com.tencent.angel.serving.apis.modelmgr;
  
  public final class GetModelStatusProtos {
    private GetModelStatusProtos() {}
    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 GetModelStatusRequestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:angel.serving.GetModelStatusRequest)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <pre>
       * Model Specification. If version is not specified, information about all
       * versions of the model will be returned. If a version is specified, the
       * status of only that version will be returned.
       * </pre>
       *
       * <code>.angel.serving.ModelSpec model_spec = 1;</code>
       */
      boolean hasModelSpec();
      /**
       * <pre>
       * Model Specification. If version is not specified, information about all
       * versions of the model will be returned. If a version is specified, the
       * status of only that version will be returned.
       * </pre>
       *
       * <code>.angel.serving.ModelSpec model_spec = 1;</code>
       */
      com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec getModelSpec();
      /**
       * <pre>
       * Model Specification. If version is not specified, information about all
       * versions of the model will be returned. If a version is specified, the
       * status of only that version will be returned.
       * </pre>
       *
       * <code>.angel.serving.ModelSpec model_spec = 1;</code>
       */
      com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpecOrBuilder getModelSpecOrBuilder();
    }
    /**
     * <pre>
     * GetModelStatusRequest contains a ModelSpec indicating the model for which
     * to get status.
     * </pre>
     *
     * Protobuf type {@code angel.serving.GetModelStatusRequest}
     */
    public  static final class GetModelStatusRequest extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:angel.serving.GetModelStatusRequest)
        GetModelStatusRequestOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use GetModelStatusRequest.newBuilder() to construct.
      private GetModelStatusRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private GetModelStatusRequest() {
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private GetModelStatusRequest(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.Builder subBuilder = null;
                if (modelSpec_ != null) {
                  subBuilder = modelSpec_.toBuilder();
                }
                modelSpec_ = input.readMessage(com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.parser(), extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(modelSpec_);
                  modelSpec_ = subBuilder.buildPartial();
                }
  
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusRequest_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusRequest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.class, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.Builder.class);
      }
  
      public static final int MODEL_SPEC_FIELD_NUMBER = 1;
      private com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec modelSpec_;
      /**
       * <pre>
       * Model Specification. If version is not specified, information about all
       * versions of the model will be returned. If a version is specified, the
       * status of only that version will be returned.
       * </pre>
       *
       * <code>.angel.serving.ModelSpec model_spec = 1;</code>
       */
      public boolean hasModelSpec() {
        return modelSpec_ != null;
      }
      /**
       * <pre>
       * Model Specification. If version is not specified, information about all
       * versions of the model will be returned. If a version is specified, the
       * status of only that version will be returned.
       * </pre>
       *
       * <code>.angel.serving.ModelSpec model_spec = 1;</code>
       */
      public com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec getModelSpec() {
        return modelSpec_ == null ? com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.getDefaultInstance() : modelSpec_;
      }
      /**
       * <pre>
       * Model Specification. If version is not specified, information about all
       * versions of the model will be returned. If a version is specified, the
       * status of only that version will be returned.
       * </pre>
       *
       * <code>.angel.serving.ModelSpec model_spec = 1;</code>
       */
      public com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpecOrBuilder getModelSpecOrBuilder() {
        return getModelSpec();
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (modelSpec_ != null) {
          output.writeMessage(1, getModelSpec());
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (modelSpec_ != null) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getModelSpec());
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest)) {
          return super.equals(obj);
        }
        com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest other = (com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest) obj;
  
        boolean result = true;
        result = result && (hasModelSpec() == other.hasModelSpec());
        if (hasModelSpec()) {
          result = result && getModelSpec()
              .equals(other.getModelSpec());
        }
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasModelSpec()) {
          hash = (37 * hash) + MODEL_SPEC_FIELD_NUMBER;
          hash = (53 * hash) + getModelSpec().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest 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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest 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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      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;
      }
      /**
       * <pre>
       * GetModelStatusRequest contains a ModelSpec indicating the model for which
       * to get status.
       * </pre>
       *
       * Protobuf type {@code angel.serving.GetModelStatusRequest}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:angel.serving.GetModelStatusRequest)
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequestOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusRequest_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusRequest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.class, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.Builder.class);
        }
  
        // Construct using com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          if (modelSpecBuilder_ == null) {
            modelSpec_ = null;
          } else {
            modelSpec_ = null;
            modelSpecBuilder_ = null;
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusRequest_descriptor;
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest getDefaultInstanceForType() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.getDefaultInstance();
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest build() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest buildPartial() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest result = new com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest(this);
          if (modelSpecBuilder_ == null) {
            result.modelSpec_ = modelSpec_;
          } else {
            result.modelSpec_ = modelSpecBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest) {
            return mergeFrom((com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest other) {
          if (other == com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest.getDefaultInstance()) return this;
          if (other.hasModelSpec()) {
            mergeModelSpec(other.getModelSpec());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec modelSpec_ = null;
        private com.google.protobuf.SingleFieldBuilderV3<
            com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec, com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.Builder, com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpecOrBuilder> modelSpecBuilder_;
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public boolean hasModelSpec() {
          return modelSpecBuilder_ != null || modelSpec_ != null;
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec getModelSpec() {
          if (modelSpecBuilder_ == null) {
            return modelSpec_ == null ? com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.getDefaultInstance() : modelSpec_;
          } else {
            return modelSpecBuilder_.getMessage();
          }
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public Builder setModelSpec(com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec value) {
          if (modelSpecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            modelSpec_ = value;
            onChanged();
          } else {
            modelSpecBuilder_.setMessage(value);
          }
  
          return this;
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public Builder setModelSpec(
            com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.Builder builderForValue) {
          if (modelSpecBuilder_ == null) {
            modelSpec_ = builderForValue.build();
            onChanged();
          } else {
            modelSpecBuilder_.setMessage(builderForValue.build());
          }
  
          return this;
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public Builder mergeModelSpec(com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec value) {
          if (modelSpecBuilder_ == null) {
            if (modelSpec_ != null) {
              modelSpec_ =
                com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.newBuilder(modelSpec_).mergeFrom(value).buildPartial();
            } else {
              modelSpec_ = value;
            }
            onChanged();
          } else {
            modelSpecBuilder_.mergeFrom(value);
          }
  
          return this;
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public Builder clearModelSpec() {
          if (modelSpecBuilder_ == null) {
            modelSpec_ = null;
            onChanged();
          } else {
            modelSpec_ = null;
            modelSpecBuilder_ = null;
          }
  
          return this;
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.Builder getModelSpecBuilder() {
          
          onChanged();
          return getModelSpecFieldBuilder().getBuilder();
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        public com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpecOrBuilder getModelSpecOrBuilder() {
          if (modelSpecBuilder_ != null) {
            return modelSpecBuilder_.getMessageOrBuilder();
          } else {
            return modelSpec_ == null ?
                com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.getDefaultInstance() : modelSpec_;
          }
        }
        /**
         * <pre>
         * Model Specification. If version is not specified, information about all
         * versions of the model will be returned. If a version is specified, the
         * status of only that version will be returned.
         * </pre>
         *
         * <code>.angel.serving.ModelSpec model_spec = 1;</code>
         */
        private com.google.protobuf.SingleFieldBuilderV3<
            com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec, com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.Builder, com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpecOrBuilder> 
            getModelSpecFieldBuilder() {
          if (modelSpecBuilder_ == null) {
            modelSpecBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec, com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpec.Builder, com.tencent.angel.serving.apis.common.ModelSpecProtos.ModelSpecOrBuilder>(
                    getModelSpec(),
                    getParentForChildren(),
                    isClean());
            modelSpec_ = null;
          }
          return modelSpecBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:angel.serving.GetModelStatusRequest)
      }
  
      // @@protoc_insertion_point(class_scope:angel.serving.GetModelStatusRequest)
      private static final com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest();
      }
  
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<GetModelStatusRequest>
          PARSER = new com.google.protobuf.AbstractParser<GetModelStatusRequest>() {
        public GetModelStatusRequest parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new GetModelStatusRequest(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<GetModelStatusRequest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<GetModelStatusRequest> getParserForType() {
        return PARSER;
      }
  
      public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusRequest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface ModelVersionStatusOrBuilder extends
        // @@protoc_insertion_point(interface_extends:angel.serving.ModelVersionStatus)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <pre>
       * Model version.
       * </pre>
       *
       * <code>int64 version = 1;</code>
       */
      long getVersion();
  
      /**
       * <pre>
       * Model state.
       * </pre>
       *
       * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
       */
      int getStateValue();
      /**
       * <pre>
       * Model state.
       * </pre>
       *
       * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
       */
      com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State getState();
  
      /**
       * <pre>
       * Model status.
       * </pre>
       *
       * <code>.angel.serving.StatusProto status = 3;</code>
       */
      boolean hasStatus();
      /**
       * <pre>
       * Model status.
       * </pre>
       *
       * <code>.angel.serving.StatusProto status = 3;</code>
       */
      com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto getStatus();
      /**
       * <pre>
       * Model status.
       * </pre>
       *
       * <code>.angel.serving.StatusProto status = 3;</code>
       */
      com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProtoOrBuilder getStatusOrBuilder();
    }
    /**
     * <pre>
     * Version number, state, and status for a single version of a model.
     * </pre>
     *
     * Protobuf type {@code angel.serving.ModelVersionStatus}
     */
    public  static final class ModelVersionStatus extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:angel.serving.ModelVersionStatus)
        ModelVersionStatusOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use ModelVersionStatus.newBuilder() to construct.
      private ModelVersionStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private ModelVersionStatus() {
        version_ = 0L;
        state_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private ModelVersionStatus(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                version_ = input.readInt64();
                break;
              }
              case 16: {
                int rawValue = input.readEnum();
  
                state_ = rawValue;
                break;
              }
              case 26: {
                com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.Builder subBuilder = null;
                if (status_ != null) {
                  subBuilder = status_.toBuilder();
                }
                status_ = input.readMessage(com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.parser(), extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(status_);
                  status_ = subBuilder.buildPartial();
                }
  
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_ModelVersionStatus_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_ModelVersionStatus_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.class, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder.class);
      }
  
      /**
       * <pre>
       * States that map to ManagerState enum in
       * tensorflow_serving/core/servable_state.h
       * </pre>
       *
       * Protobuf enum {@code angel.serving.ModelVersionStatus.State}
       */
      public enum State
          implements com.google.protobuf.ProtocolMessageEnum {
        /**
         * <pre>
         * Default value.
         * </pre>
         *
         * <code>UNKNOWN = 0;</code>
         */
        UNKNOWN(0),
        /**
         * <pre>
         * The manager is tracking this servable, but has not initiated any action
         * pertaining to it.
         * </pre>
         *
         * <code>START = 10;</code>
         */
        START(10),
        /**
         * <pre>
         * The manager has decided to load this servable. In particular, checks
         * around resource availability and other aspects have passed, and the
         * manager is about to invoke the loader's Load() method.
         * </pre>
         *
         * <code>LOADING = 20;</code>
         */
        LOADING(20),
        /**
         * <pre>
         * The manager has successfully loaded this servable and made it available
         * for serving (i.e. GetServableHandle(id) will succeed). To avoid races,
         * this state is not reported until *after* the servable is made
         * available.
         * </pre>
         *
         * <code>AVAILABLE = 30;</code>
         */
        AVAILABLE(30),
        /**
         * <pre>
         * The manager has decided to make this servable unavailable, and unload
         * it. To avoid races, this state is reported *before* the servable is
         * made unavailable.
         * </pre>
         *
         * <code>UNLOADING = 40;</code>
         */
        UNLOADING(40),
        /**
         * <pre>
         * This servable has reached the end of its journey in the manager. Either
         * it loaded and ultimately unloaded successfully, or it hit an error at
         * some point in its lifecycle.
         * </pre>
         *
         * <code>END = 50;</code>
         */
        END(50),
        UNRECOGNIZED(-1),
        ;
  
        /**
         * <pre>
         * Default value.
         * </pre>
         *
         * <code>UNKNOWN = 0;</code>
         */
        public static final int UNKNOWN_VALUE = 0;
        /**
         * <pre>
         * The manager is tracking this servable, but has not initiated any action
         * pertaining to it.
         * </pre>
         *
         * <code>START = 10;</code>
         */
        public static final int START_VALUE = 10;
        /**
         * <pre>
         * The manager has decided to load this servable. In particular, checks
         * around resource availability and other aspects have passed, and the
         * manager is about to invoke the loader's Load() method.
         * </pre>
         *
         * <code>LOADING = 20;</code>
         */
        public static final int LOADING_VALUE = 20;
        /**
         * <pre>
         * The manager has successfully loaded this servable and made it available
         * for serving (i.e. GetServableHandle(id) will succeed). To avoid races,
         * this state is not reported until *after* the servable is made
         * available.
         * </pre>
         *
         * <code>AVAILABLE = 30;</code>
         */
        public static final int AVAILABLE_VALUE = 30;
        /**
         * <pre>
         * The manager has decided to make this servable unavailable, and unload
         * it. To avoid races, this state is reported *before* the servable is
         * made unavailable.
         * </pre>
         *
         * <code>UNLOADING = 40;</code>
         */
        public static final int UNLOADING_VALUE = 40;
        /**
         * <pre>
         * This servable has reached the end of its journey in the manager. Either
         * it loaded and ultimately unloaded successfully, or it hit an error at
         * some point in its lifecycle.
         * </pre>
         *
         * <code>END = 50;</code>
         */
        public static final int END_VALUE = 50;
  
  
        public final int getNumber() {
          if (this == UNRECOGNIZED) {
            throw new java.lang.IllegalArgumentException(
                "Can't get the number of an unknown enum value.");
          }
          return value;
        }
  
        /**
         * @deprecated Use {@link #forNumber(int)} instead.
         */
        @java.lang.Deprecated
        public static State valueOf(int value) {
          return forNumber(value);
        }
  
        public static State forNumber(int value) {
          switch (value) {
            case 0: return UNKNOWN;
            case 10: return START;
            case 20: return LOADING;
            case 30: return AVAILABLE;
            case 40: return UNLOADING;
            case 50: return END;
            default: return null;
          }
        }
  
        public static com.google.protobuf.Internal.EnumLiteMap<State>
            internalGetValueMap() {
          return internalValueMap;
        }
        private static final com.google.protobuf.Internal.EnumLiteMap<
            State> internalValueMap =
              new com.google.protobuf.Internal.EnumLiteMap<State>() {
                public State findValueByNumber(int number) {
                  return State.forNumber(number);
                }
              };
  
        public final com.google.protobuf.Descriptors.EnumValueDescriptor
            getValueDescriptor() {
          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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.getDescriptor().getEnumTypes().get(0);
        }
  
        private static final State[] VALUES = values();
  
        public static State 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 State(int value) {
          this.value = value;
        }
  
        // @@protoc_insertion_point(enum_scope:angel.serving.ModelVersionStatus.State)
      }
  
      public static final int VERSION_FIELD_NUMBER = 1;
      private long version_;
      /**
       * <pre>
       * Model version.
       * </pre>
       *
       * <code>int64 version = 1;</code>
       */
      public long getVersion() {
        return version_;
      }
  
      public static final int STATE_FIELD_NUMBER = 2;
      private int state_;
      /**
       * <pre>
       * Model state.
       * </pre>
       *
       * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
       */
      public int getStateValue() {
        return state_;
      }
      /**
       * <pre>
       * Model state.
       * </pre>
       *
       * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
       */
      public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State getState() {
        com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State result = com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State.valueOf(state_);
        return result == null ? com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State.UNRECOGNIZED : result;
      }
  
      public static final int STATUS_FIELD_NUMBER = 3;
      private com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto status_;
      /**
       * <pre>
       * Model status.
       * </pre>
       *
       * <code>.angel.serving.StatusProto status = 3;</code>
       */
      public boolean hasStatus() {
        return status_ != null;
      }
      /**
       * <pre>
       * Model status.
       * </pre>
       *
       * <code>.angel.serving.StatusProto status = 3;</code>
       */
      public com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto getStatus() {
        return status_ == null ? com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.getDefaultInstance() : status_;
      }
      /**
       * <pre>
       * Model status.
       * </pre>
       *
       * <code>.angel.serving.StatusProto status = 3;</code>
       */
      public com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProtoOrBuilder getStatusOrBuilder() {
        return getStatus();
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (version_ != 0L) {
          output.writeInt64(1, version_);
        }
        if (state_ != com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State.UNKNOWN.getNumber()) {
          output.writeEnum(2, state_);
        }
        if (status_ != null) {
          output.writeMessage(3, getStatus());
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (version_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt64Size(1, version_);
        }
        if (state_ != com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State.UNKNOWN.getNumber()) {
          size += com.google.protobuf.CodedOutputStream
            .computeEnumSize(2, state_);
        }
        if (status_ != null) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(3, getStatus());
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus)) {
          return super.equals(obj);
        }
        com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus other = (com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus) obj;
  
        boolean result = true;
        result = result && (getVersion()
            == other.getVersion());
        result = result && state_ == other.state_;
        result = result && (hasStatus() == other.hasStatus());
        if (hasStatus()) {
          result = result && getStatus()
              .equals(other.getStatus());
        }
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + VERSION_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getVersion());
        hash = (37 * hash) + STATE_FIELD_NUMBER;
        hash = (53 * hash) + state_;
        if (hasStatus()) {
          hash = (37 * hash) + STATUS_FIELD_NUMBER;
          hash = (53 * hash) + getStatus().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus 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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus 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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      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;
      }
      /**
       * <pre>
       * Version number, state, and status for a single version of a model.
       * </pre>
       *
       * Protobuf type {@code angel.serving.ModelVersionStatus}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:angel.serving.ModelVersionStatus)
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_ModelVersionStatus_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_ModelVersionStatus_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.class, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder.class);
        }
  
        // Construct using com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          version_ = 0L;
  
          state_ = 0;
  
          if (statusBuilder_ == null) {
            status_ = null;
          } else {
            status_ = null;
            statusBuilder_ = null;
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_ModelVersionStatus_descriptor;
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus getDefaultInstanceForType() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.getDefaultInstance();
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus build() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus buildPartial() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus result = new com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus(this);
          result.version_ = version_;
          result.state_ = state_;
          if (statusBuilder_ == null) {
            result.status_ = status_;
          } else {
            result.status_ = statusBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus) {
            return mergeFrom((com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus other) {
          if (other == com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.getDefaultInstance()) return this;
          if (other.getVersion() != 0L) {
            setVersion(other.getVersion());
          }
          if (other.state_ != 0) {
            setStateValue(other.getStateValue());
          }
          if (other.hasStatus()) {
            mergeStatus(other.getStatus());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long version_ ;
        /**
         * <pre>
         * Model version.
         * </pre>
         *
         * <code>int64 version = 1;</code>
         */
        public long getVersion() {
          return version_;
        }
        /**
         * <pre>
         * Model version.
         * </pre>
         *
         * <code>int64 version = 1;</code>
         */
        public Builder setVersion(long value) {
          
          version_ = value;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * Model version.
         * </pre>
         *
         * <code>int64 version = 1;</code>
         */
        public Builder clearVersion() {
          
          version_ = 0L;
          onChanged();
          return this;
        }
  
        private int state_ = 0;
        /**
         * <pre>
         * Model state.
         * </pre>
         *
         * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
         */
        public int getStateValue() {
          return state_;
        }
        /**
         * <pre>
         * Model state.
         * </pre>
         *
         * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
         */
        public Builder setStateValue(int value) {
          state_ = value;
          onChanged();
          return this;
        }
        /**
         * <pre>
         * Model state.
         * </pre>
         *
         * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State getState() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State result = com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State.valueOf(state_);
          return result == null ? com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State.UNRECOGNIZED : result;
        }
        /**
         * <pre>
         * Model state.
         * </pre>
         *
         * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
         */
        public Builder setState(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.State value) {
          if (value == null) {
            throw new NullPointerException();
          }
          
          state_ = value.getNumber();
          onChanged();
          return this;
        }
        /**
         * <pre>
         * Model state.
         * </pre>
         *
         * <code>.angel.serving.ModelVersionStatus.State state = 2;</code>
         */
        public Builder clearState() {
          
          state_ = 0;
          onChanged();
          return this;
        }
  
        private com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto status_ = null;
        private com.google.protobuf.SingleFieldBuilderV3<
            com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto, com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.Builder, com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProtoOrBuilder> statusBuilder_;
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public boolean hasStatus() {
          return statusBuilder_ != null || status_ != null;
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto getStatus() {
          if (statusBuilder_ == null) {
            return status_ == null ? com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.getDefaultInstance() : status_;
          } else {
            return statusBuilder_.getMessage();
          }
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public Builder setStatus(com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto value) {
          if (statusBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            status_ = value;
            onChanged();
          } else {
            statusBuilder_.setMessage(value);
          }
  
          return this;
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public Builder setStatus(
            com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.Builder builderForValue) {
          if (statusBuilder_ == null) {
            status_ = builderForValue.build();
            onChanged();
          } else {
            statusBuilder_.setMessage(builderForValue.build());
          }
  
          return this;
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public Builder mergeStatus(com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto value) {
          if (statusBuilder_ == null) {
            if (status_ != null) {
              status_ =
                com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.newBuilder(status_).mergeFrom(value).buildPartial();
            } else {
              status_ = value;
            }
            onChanged();
          } else {
            statusBuilder_.mergeFrom(value);
          }
  
          return this;
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public Builder clearStatus() {
          if (statusBuilder_ == null) {
            status_ = null;
            onChanged();
          } else {
            status_ = null;
            statusBuilder_ = null;
          }
  
          return this;
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.Builder getStatusBuilder() {
          
          onChanged();
          return getStatusFieldBuilder().getBuilder();
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProtoOrBuilder getStatusOrBuilder() {
          if (statusBuilder_ != null) {
            return statusBuilder_.getMessageOrBuilder();
          } else {
            return status_ == null ?
                com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.getDefaultInstance() : status_;
          }
        }
        /**
         * <pre>
         * Model status.
         * </pre>
         *
         * <code>.angel.serving.StatusProto status = 3;</code>
         */
        private com.google.protobuf.SingleFieldBuilderV3<
            com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto, com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.Builder, com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProtoOrBuilder> 
            getStatusFieldBuilder() {
          if (statusBuilder_ == null) {
            statusBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto, com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProto.Builder, com.tencent.angel.serving.apis.modelmgr.StatusProtos.StatusProtoOrBuilder>(
                    getStatus(),
                    getParentForChildren(),
                    isClean());
            status_ = null;
          }
          return statusBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:angel.serving.ModelVersionStatus)
      }
  
      // @@protoc_insertion_point(class_scope:angel.serving.ModelVersionStatus)
      private static final com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus();
      }
  
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<ModelVersionStatus>
          PARSER = new com.google.protobuf.AbstractParser<ModelVersionStatus>() {
        public ModelVersionStatus parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new ModelVersionStatus(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<ModelVersionStatus> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<ModelVersionStatus> getParserForType() {
        return PARSER;
      }
  
      public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface GetModelStatusResponseOrBuilder extends
        // @@protoc_insertion_point(interface_extends:angel.serving.GetModelStatusResponse)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      java.util.List<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus> 
          getModelVersionStatusList();
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus getModelVersionStatus(int index);
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      int getModelVersionStatusCount();
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      java.util.List<? extends com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder> 
          getModelVersionStatusOrBuilderList();
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder getModelVersionStatusOrBuilder(
          int index);
  
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
      int getTypeMapCount();
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
      boolean containsTypeMap(
          java.lang.String key);
      /**
       * Use {@link #getTypeMapMap()} instead.
       */
      @java.lang.Deprecated
      java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
      getTypeMap();
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
      java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
      getTypeMapMap();
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
      com.tencent.angel.serving.apis.common.TypesProtos.DataType getTypeMapOrDefault(
          java.lang.String key,
          com.tencent.angel.serving.apis.common.TypesProtos.DataType defaultValue);
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
      com.tencent.angel.serving.apis.common.TypesProtos.DataType getTypeMapOrThrow(
          java.lang.String key);
      /**
       * Use {@link #getTypeMapValueMap()} instead.
       */
      @java.lang.Deprecated
      java.util.Map<java.lang.String, java.lang.Integer>
      getTypeMapValue();
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
      java.util.Map<java.lang.String, java.lang.Integer>
      getTypeMapValueMap();
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      int getTypeMapValueOrDefault(
          java.lang.String key,
          int defaultValue);
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      int getTypeMapValueOrThrow(
          java.lang.String key);
  
      /**
       * <code>int64 dim = 3;</code>
       */
      long getDim();
    }
    /**
     * <pre>
     * Response for ModelStatusRequest on successful run.
     * </pre>
     *
     * Protobuf type {@code angel.serving.GetModelStatusResponse}
     */
    public  static final class GetModelStatusResponse extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:angel.serving.GetModelStatusResponse)
        GetModelStatusResponseOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use GetModelStatusResponse.newBuilder() to construct.
      private GetModelStatusResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private GetModelStatusResponse() {
        modelVersionStatus_ = java.util.Collections.emptyList();
        dim_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private GetModelStatusResponse(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  modelVersionStatus_ = new java.util.ArrayList<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus>();
                  mutable_bitField0_ |= 0x00000001;
                }
                modelVersionStatus_.add(
                    input.readMessage(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.parser(), extensionRegistry));
                break;
              }
              case 18: {
                if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                  typeMap_ = com.google.protobuf.MapField.newMapField(
                      TypeMapDefaultEntryHolder.defaultEntry);
                  mutable_bitField0_ |= 0x00000002;
                }
                com.google.protobuf.MapEntry<java.lang.String, java.lang.Integer>
                typeMap__ = input.readMessage(
                    TypeMapDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                typeMap_.getMutableMap().put(
                    typeMap__.getKey(), typeMap__.getValue());
                break;
              }
              case 24: {
  
                dim_ = input.readInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            modelVersionStatus_ = java.util.Collections.unmodifiableList(modelVersionStatus_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusResponse_descriptor;
      }
  
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMapField(
          int number) {
        switch (number) {
          case 2:
            return internalGetTypeMap();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusResponse_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.class, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.Builder.class);
      }
  
      private int bitField0_;
      public static final int MODEL_VERSION_STATUS_FIELD_NUMBER = 1;
      private java.util.List<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus> modelVersionStatus_;
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      public java.util.List<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus> getModelVersionStatusList() {
        return modelVersionStatus_;
      }
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      public java.util.List<? extends com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder> 
          getModelVersionStatusOrBuilderList() {
        return modelVersionStatus_;
      }
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      public int getModelVersionStatusCount() {
        return modelVersionStatus_.size();
      }
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus getModelVersionStatus(int index) {
        return modelVersionStatus_.get(index);
      }
      /**
       * <pre>
       * Version number and status information for applicable model version(s).
       * </pre>
       *
       * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
       */
      public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder getModelVersionStatusOrBuilder(
          int index) {
        return modelVersionStatus_.get(index);
      }
  
      public static final int TYPE_MAP_FIELD_NUMBER = 2;
      private static final class TypeMapDefaultEntryHolder {
        static final com.google.protobuf.MapEntry<
            java.lang.String, java.lang.Integer> defaultEntry =
                com.google.protobuf.MapEntry
                .<java.lang.String, java.lang.Integer>newDefaultInstance(
                    com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusResponse_TypeMapEntry_descriptor, 
                    com.google.protobuf.WireFormat.FieldType.STRING,
                    "",
                    com.google.protobuf.WireFormat.FieldType.ENUM,
                    com.tencent.angel.serving.apis.common.TypesProtos.DataType.DT_INVALID.getNumber());
      }
      private com.google.protobuf.MapField<
          java.lang.String, java.lang.Integer> typeMap_;
      private com.google.protobuf.MapField<java.lang.String, java.lang.Integer>
      internalGetTypeMap() {
        if (typeMap_ == null) {
          return com.google.protobuf.MapField.emptyMapField(
              TypeMapDefaultEntryHolder.defaultEntry);
        }
        return typeMap_;
      }
      private static final
      com.google.protobuf.Internal.MapAdapter.Converter<
          java.lang.Integer, com.tencent.angel.serving.apis.common.TypesProtos.DataType> typeMapValueConverter =
              com.google.protobuf.Internal.MapAdapter.newEnumConverter(
                  com.tencent.angel.serving.apis.common.TypesProtos.DataType.internalGetValueMap(),
                  com.tencent.angel.serving.apis.common.TypesProtos.DataType.UNRECOGNIZED);
      private static final java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
      internalGetAdaptedTypeMapMap(
          java.util.Map<java.lang.String, java.lang.Integer> map) {
        return new com.google.protobuf.Internal.MapAdapter<
            java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType, java.lang.Integer>(
                map, typeMapValueConverter);
      }
  
      public int getTypeMapCount() {
        return internalGetTypeMap().getMap().size();
      }
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public boolean containsTypeMap(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        return internalGetTypeMap().getMap().containsKey(key);
      }
      /**
       * Use {@link #getTypeMapMap()} instead.
       */
      @java.lang.Deprecated
      public java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
      getTypeMap() {
        return getTypeMapMap();
      }
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
      getTypeMapMap() {
        return internalGetAdaptedTypeMapMap(
            internalGetTypeMap().getMap());}
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public com.tencent.angel.serving.apis.common.TypesProtos.DataType getTypeMapOrDefault(
          java.lang.String key,
          com.tencent.angel.serving.apis.common.TypesProtos.DataType defaultValue) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, java.lang.Integer> map =
            internalGetTypeMap().getMap();
        return map.containsKey(key)
               ? typeMapValueConverter.doForward(map.get(key))
               : defaultValue;
      }
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public com.tencent.angel.serving.apis.common.TypesProtos.DataType getTypeMapOrThrow(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, java.lang.Integer> map =
            internalGetTypeMap().getMap();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return typeMapValueConverter.doForward(map.get(key));
      }
      /**
       * Use {@link #getTypeMapValueMap()} instead.
       */
      @java.lang.Deprecated
      public java.util.Map<java.lang.String, java.lang.Integer>
      getTypeMapValue() {
        return getTypeMapValueMap();
      }
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public java.util.Map<java.lang.String, java.lang.Integer>
      getTypeMapValueMap() {
        return internalGetTypeMap().getMap();
      }
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public int getTypeMapValueOrDefault(
          java.lang.String key,
          int defaultValue) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, java.lang.Integer> map =
            internalGetTypeMap().getMap();
        return map.containsKey(key) ? map.get(key) : defaultValue;
      }
      /**
       * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
       */
  
      public int getTypeMapValueOrThrow(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, java.lang.Integer> map =
            internalGetTypeMap().getMap();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return map.get(key);
      }
  
      public static final int DIM_FIELD_NUMBER = 3;
      private long dim_;
      /**
       * <code>int64 dim = 3;</code>
       */
      public long getDim() {
        return dim_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < modelVersionStatus_.size(); i++) {
          output.writeMessage(1, modelVersionStatus_.get(i));
        }
        com.google.protobuf.GeneratedMessageV3
          .serializeStringMapTo(
            output,
            internalGetTypeMap(),
            TypeMapDefaultEntryHolder.defaultEntry,
            2);
        if (dim_ != 0L) {
          output.writeInt64(3, dim_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < modelVersionStatus_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, modelVersionStatus_.get(i));
        }
        for (java.util.Map.Entry<java.lang.String, java.lang.Integer> entry
             : internalGetTypeMap().getMap().entrySet()) {
          com.google.protobuf.MapEntry<java.lang.String, java.lang.Integer>
          typeMap__ = TypeMapDefaultEntryHolder.defaultEntry.newBuilderForType()
              .setKey(entry.getKey())
              .setValue(entry.getValue())
              .build();
          size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(2, typeMap__);
        }
        if (dim_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt64Size(3, dim_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse)) {
          return super.equals(obj);
        }
        com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse other = (com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse) obj;
  
        boolean result = true;
        result = result && getModelVersionStatusList()
            .equals(other.getModelVersionStatusList());
        result = result && internalGetTypeMap().equals(
            other.internalGetTypeMap());
        result = result && (getDim()
            == other.getDim());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getModelVersionStatusCount() > 0) {
          hash = (37 * hash) + MODEL_VERSION_STATUS_FIELD_NUMBER;
          hash = (53 * hash) + getModelVersionStatusList().hashCode();
        }
        if (!internalGetTypeMap().getMap().isEmpty()) {
          hash = (37 * hash) + TYPE_MAP_FIELD_NUMBER;
          hash = (53 * hash) + internalGetTypeMap().hashCode();
        }
        hash = (37 * hash) + DIM_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getDim());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse 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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse 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.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      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;
      }
      /**
       * <pre>
       * Response for ModelStatusRequest on successful run.
       * </pre>
       *
       * Protobuf type {@code angel.serving.GetModelStatusResponse}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:angel.serving.GetModelStatusResponse)
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponseOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusResponse_descriptor;
        }
  
        @SuppressWarnings({"rawtypes"})
        protected com.google.protobuf.MapField internalGetMapField(
            int number) {
          switch (number) {
            case 2:
              return internalGetTypeMap();
            default:
              throw new RuntimeException(
                  "Invalid map field number: " + number);
          }
        }
        @SuppressWarnings({"rawtypes"})
        protected com.google.protobuf.MapField internalGetMutableMapField(
            int number) {
          switch (number) {
            case 2:
              return internalGetMutableTypeMap();
            default:
              throw new RuntimeException(
                  "Invalid map field number: " + number);
          }
        }
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusResponse_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.class, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.Builder.class);
        }
  
        // Construct using com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getModelVersionStatusFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (modelVersionStatusBuilder_ == null) {
            modelVersionStatus_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            modelVersionStatusBuilder_.clear();
          }
          internalGetMutableTypeMap().clear();
          dim_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.internal_static_angel_serving_GetModelStatusResponse_descriptor;
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse getDefaultInstanceForType() {
          return com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.getDefaultInstance();
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse build() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse buildPartial() {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse result = new com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (modelVersionStatusBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              modelVersionStatus_ = java.util.Collections.unmodifiableList(modelVersionStatus_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.modelVersionStatus_ = modelVersionStatus_;
          } else {
            result.modelVersionStatus_ = modelVersionStatusBuilder_.build();
          }
          result.typeMap_ = internalGetTypeMap();
          result.typeMap_.makeImmutable();
          result.dim_ = dim_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse) {
            return mergeFrom((com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse other) {
          if (other == com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse.getDefaultInstance()) return this;
          if (modelVersionStatusBuilder_ == null) {
            if (!other.modelVersionStatus_.isEmpty()) {
              if (modelVersionStatus_.isEmpty()) {
                modelVersionStatus_ = other.modelVersionStatus_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureModelVersionStatusIsMutable();
                modelVersionStatus_.addAll(other.modelVersionStatus_);
              }
              onChanged();
            }
          } else {
            if (!other.modelVersionStatus_.isEmpty()) {
              if (modelVersionStatusBuilder_.isEmpty()) {
                modelVersionStatusBuilder_.dispose();
                modelVersionStatusBuilder_ = null;
                modelVersionStatus_ = other.modelVersionStatus_;
                bitField0_ = (bitField0_ & ~0x00000001);
                modelVersionStatusBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getModelVersionStatusFieldBuilder() : null;
              } else {
                modelVersionStatusBuilder_.addAllMessages(other.modelVersionStatus_);
              }
            }
          }
          internalGetMutableTypeMap().mergeFrom(
              other.internalGetTypeMap());
          if (other.getDim() != 0L) {
            setDim(other.getDim());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus> modelVersionStatus_ =
          java.util.Collections.emptyList();
        private void ensureModelVersionStatusIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            modelVersionStatus_ = new java.util.ArrayList<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus>(modelVersionStatus_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder> modelVersionStatusBuilder_;
  
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public java.util.List<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus> getModelVersionStatusList() {
          if (modelVersionStatusBuilder_ == null) {
            return java.util.Collections.unmodifiableList(modelVersionStatus_);
          } else {
            return modelVersionStatusBuilder_.getMessageList();
          }
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public int getModelVersionStatusCount() {
          if (modelVersionStatusBuilder_ == null) {
            return modelVersionStatus_.size();
          } else {
            return modelVersionStatusBuilder_.getCount();
          }
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus getModelVersionStatus(int index) {
          if (modelVersionStatusBuilder_ == null) {
            return modelVersionStatus_.get(index);
          } else {
            return modelVersionStatusBuilder_.getMessage(index);
          }
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder setModelVersionStatus(
            int index, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus value) {
          if (modelVersionStatusBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.set(index, value);
            onChanged();
          } else {
            modelVersionStatusBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder setModelVersionStatus(
            int index, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder builderForValue) {
          if (modelVersionStatusBuilder_ == null) {
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.set(index, builderForValue.build());
            onChanged();
          } else {
            modelVersionStatusBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder addModelVersionStatus(com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus value) {
          if (modelVersionStatusBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.add(value);
            onChanged();
          } else {
            modelVersionStatusBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder addModelVersionStatus(
            int index, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus value) {
          if (modelVersionStatusBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.add(index, value);
            onChanged();
          } else {
            modelVersionStatusBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder addModelVersionStatus(
            com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder builderForValue) {
          if (modelVersionStatusBuilder_ == null) {
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.add(builderForValue.build());
            onChanged();
          } else {
            modelVersionStatusBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder addModelVersionStatus(
            int index, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder builderForValue) {
          if (modelVersionStatusBuilder_ == null) {
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.add(index, builderForValue.build());
            onChanged();
          } else {
            modelVersionStatusBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder addAllModelVersionStatus(
            java.lang.Iterable<? extends com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus> values) {
          if (modelVersionStatusBuilder_ == null) {
            ensureModelVersionStatusIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, modelVersionStatus_);
            onChanged();
          } else {
            modelVersionStatusBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder clearModelVersionStatus() {
          if (modelVersionStatusBuilder_ == null) {
            modelVersionStatus_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            modelVersionStatusBuilder_.clear();
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public Builder removeModelVersionStatus(int index) {
          if (modelVersionStatusBuilder_ == null) {
            ensureModelVersionStatusIsMutable();
            modelVersionStatus_.remove(index);
            onChanged();
          } else {
            modelVersionStatusBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder getModelVersionStatusBuilder(
            int index) {
          return getModelVersionStatusFieldBuilder().getBuilder(index);
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder getModelVersionStatusOrBuilder(
            int index) {
          if (modelVersionStatusBuilder_ == null) {
            return modelVersionStatus_.get(index);  } else {
            return modelVersionStatusBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public java.util.List<? extends com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder> 
             getModelVersionStatusOrBuilderList() {
          if (modelVersionStatusBuilder_ != null) {
            return modelVersionStatusBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(modelVersionStatus_);
          }
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder addModelVersionStatusBuilder() {
          return getModelVersionStatusFieldBuilder().addBuilder(
              com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.getDefaultInstance());
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder addModelVersionStatusBuilder(
            int index) {
          return getModelVersionStatusFieldBuilder().addBuilder(
              index, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.getDefaultInstance());
        }
        /**
         * <pre>
         * Version number and status information for applicable model version(s).
         * </pre>
         *
         * <code>repeated .angel.serving.ModelVersionStatus model_version_status = 1[json_name = "model_version_status"];</code>
         */
        public java.util.List<com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder> 
             getModelVersionStatusBuilderList() {
          return getModelVersionStatusFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder> 
            getModelVersionStatusFieldBuilder() {
          if (modelVersionStatusBuilder_ == null) {
            modelVersionStatusBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatus.Builder, com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.ModelVersionStatusOrBuilder>(
                    modelVersionStatus_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            modelVersionStatus_ = null;
          }
          return modelVersionStatusBuilder_;
        }
  
        private com.google.protobuf.MapField<
            java.lang.String, java.lang.Integer> typeMap_;
        private com.google.protobuf.MapField<java.lang.String, java.lang.Integer>
        internalGetTypeMap() {
          if (typeMap_ == null) {
            return com.google.protobuf.MapField.emptyMapField(
                TypeMapDefaultEntryHolder.defaultEntry);
          }
          return typeMap_;
        }
        private com.google.protobuf.MapField<java.lang.String, java.lang.Integer>
        internalGetMutableTypeMap() {
          onChanged();;
          if (typeMap_ == null) {
            typeMap_ = com.google.protobuf.MapField.newMapField(
                TypeMapDefaultEntryHolder.defaultEntry);
          }
          if (!typeMap_.isMutable()) {
            typeMap_ = typeMap_.copy();
          }
          return typeMap_;
        }
  
        public int getTypeMapCount() {
          return internalGetTypeMap().getMap().size();
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public boolean containsTypeMap(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          return internalGetTypeMap().getMap().containsKey(key);
        }
        /**
         * Use {@link #getTypeMapMap()} instead.
         */
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
        getTypeMap() {
          return getTypeMapMap();
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
        getTypeMapMap() {
          return internalGetAdaptedTypeMapMap(
              internalGetTypeMap().getMap());}
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public com.tencent.angel.serving.apis.common.TypesProtos.DataType getTypeMapOrDefault(
            java.lang.String key,
            com.tencent.angel.serving.apis.common.TypesProtos.DataType defaultValue) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          java.util.Map<java.lang.String, java.lang.Integer> map =
              internalGetTypeMap().getMap();
          return map.containsKey(key)
                 ? typeMapValueConverter.doForward(map.get(key))
                 : defaultValue;
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public com.tencent.angel.serving.apis.common.TypesProtos.DataType getTypeMapOrThrow(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          java.util.Map<java.lang.String, java.lang.Integer> map =
              internalGetTypeMap().getMap();
          if (!map.containsKey(key)) {
            throw new java.lang.IllegalArgumentException();
          }
          return typeMapValueConverter.doForward(map.get(key));
        }
        /**
         * Use {@link #getTypeMapValueMap()} instead.
         */
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, java.lang.Integer>
        getTypeMapValue() {
          return getTypeMapValueMap();
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public java.util.Map<java.lang.String, java.lang.Integer>
        getTypeMapValueMap() {
          return internalGetTypeMap().getMap();
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public int getTypeMapValueOrDefault(
            java.lang.String key,
            int defaultValue) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          java.util.Map<java.lang.String, java.lang.Integer> map =
              internalGetTypeMap().getMap();
          return map.containsKey(key) ? map.get(key) : defaultValue;
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public int getTypeMapValueOrThrow(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          java.util.Map<java.lang.String, java.lang.Integer> map =
              internalGetTypeMap().getMap();
          if (!map.containsKey(key)) {
            throw new java.lang.IllegalArgumentException();
          }
          return map.get(key);
        }
  
        public Builder clearTypeMap() {
          internalGetMutableTypeMap().getMutableMap()
              .clear();
          return this;
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
  
        public Builder removeTypeMap(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          internalGetMutableTypeMap().getMutableMap()
              .remove(key);
          return this;
        }
        /**
         * Use alternate mutation accessors instead.
         */
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType>
        getMutableTypeMap() {
          return internalGetAdaptedTypeMapMap(
               internalGetMutableTypeMap().getMutableMap());
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
        public Builder putTypeMap(
            java.lang.String key,
            com.tencent.angel.serving.apis.common.TypesProtos.DataType value) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          if (value == null) { throw new java.lang.NullPointerException(); }
          internalGetMutableTypeMap().getMutableMap()
              .put(key, typeMapValueConverter.doBackward(value));
          return this;
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
        public Builder putAllTypeMap(
            java.util.Map<java.lang.String, com.tencent.angel.serving.apis.common.TypesProtos.DataType> values) {
          internalGetAdaptedTypeMapMap(
              internalGetMutableTypeMap().getMutableMap())
                  .putAll(values);
          return this;
        }
        /**
         * Use alternate mutation accessors instead.
         */
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, java.lang.Integer>
        getMutableTypeMapValue() {
          return internalGetMutableTypeMap().getMutableMap();
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
        public Builder putTypeMapValue(
            java.lang.String key,
            int value) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          internalGetMutableTypeMap().getMutableMap()
              .put(key, value);
          return this;
        }
        /**
         * <code>map&lt;string, .angel.DataType&gt; type_map = 2;</code>
         */
        public Builder putAllTypeMapValue(
            java.util.Map<java.lang.String, java.lang.Integer> values) {
          internalGetMutableTypeMap().getMutableMap()
              .putAll(values);
          return this;
        }
  
        private long dim_ ;
        /**
         * <code>int64 dim = 3;</code>
         */
        public long getDim() {
          return dim_;
        }
        /**
         * <code>int64 dim = 3;</code>
         */
        public Builder setDim(long value) {
          
          dim_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>int64 dim = 3;</code>
         */
        public Builder clearDim() {
          
          dim_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:angel.serving.GetModelStatusResponse)
      }
  
      // @@protoc_insertion_point(class_scope:angel.serving.GetModelStatusResponse)
      private static final com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse();
      }
  
      public static com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<GetModelStatusResponse>
          PARSER = new com.google.protobuf.AbstractParser<GetModelStatusResponse>() {
        public GetModelStatusResponse parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new GetModelStatusResponse(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<GetModelStatusResponse> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<GetModelStatusResponse> getParserForType() {
        return PARSER;
      }
  
      public com.tencent.angel.serving.apis.modelmgr.GetModelStatusProtos.GetModelStatusResponse getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_angel_serving_GetModelStatusRequest_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_angel_serving_GetModelStatusRequest_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_angel_serving_ModelVersionStatus_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_angel_serving_ModelVersionStatus_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_angel_serving_GetModelStatusResponse_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_angel_serving_GetModelStatusResponse_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_angel_serving_GetModelStatusResponse_TypeMapEntry_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_angel_serving_GetModelStatusResponse_TypeMapEntry_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$apis/modelmgr/get_model_status.proto\022\r" +
        "angel.serving\032\027apis/common/model.proto\032\027" +
        "apis/common/types.proto\032\032apis/modelmgr/s" +
        "tatus.proto\"E\n\025GetModelStatusRequest\022,\n\n" +
        "model_spec\030\001 \001(\0132\030.angel.serving.ModelSp" +
        "ec\"\336\001\n\022ModelVersionStatus\022\017\n\007version\030\001 \001" +
        "(\003\0226\n\005state\030\002 \001(\0162\'.angel.serving.ModelV" +
        "ersionStatus.State\022*\n\006status\030\003 \001(\0132\032.ang" +
        "el.serving.StatusProto\"S\n\005State\022\013\n\007UNKNO" +
        "WN\020\000\022\t\n\005START\020\n\022\013\n\007LOADING\020\024\022\r\n\tAVAILABL" +
        "E\020\036\022\r\n\tUNLOADING\020(\022\007\n\003END\0202\"\203\002\n\026GetModel" +
        "StatusResponse\022U\n\024model_version_status\030\001" +
        " \003(\0132!.angel.serving.ModelVersionStatusR" +
        "\024model_version_status\022D\n\010type_map\030\002 \003(\0132" +
        "2.angel.serving.GetModelStatusResponse.T" +
        "ypeMapEntry\022\013\n\003dim\030\003 \001(\003\032?\n\014TypeMapEntry" +
        "\022\013\n\003key\030\001 \001(\t\022\036\n\005value\030\002 \001(\0162\017.angel.Dat" +
        "aType:\0028\001BA\n\'com.tencent.angel.serving.a" +
        "pis.modelmgrB\024GetModelStatusProtosP\000b\006pr" +
        "oto3"
      };
      com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
          new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
            public com.google.protobuf.ExtensionRegistry assignDescriptors(
                com.google.protobuf.Descriptors.FileDescriptor root) {
              descriptor = root;
              return null;
            }
          };
      com.google.protobuf.Descriptors.FileDescriptor
        .internalBuildGeneratedFileFrom(descriptorData,
          new com.google.protobuf.Descriptors.FileDescriptor[] {
            com.tencent.angel.serving.apis.common.ModelSpecProtos.getDescriptor(),
            com.tencent.angel.serving.apis.common.TypesProtos.getDescriptor(),
            com.tencent.angel.serving.apis.modelmgr.StatusProtos.getDescriptor(),
          }, assigner);
      internal_static_angel_serving_GetModelStatusRequest_descriptor =
        getDescriptor().getMessageTypes().get(0);
      internal_static_angel_serving_GetModelStatusRequest_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_angel_serving_GetModelStatusRequest_descriptor,
          new java.lang.String[] { "ModelSpec", });
      internal_static_angel_serving_ModelVersionStatus_descriptor =
        getDescriptor().getMessageTypes().get(1);
      internal_static_angel_serving_ModelVersionStatus_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_angel_serving_ModelVersionStatus_descriptor,
          new java.lang.String[] { "Version", "State", "Status", });
      internal_static_angel_serving_GetModelStatusResponse_descriptor =
        getDescriptor().getMessageTypes().get(2);
      internal_static_angel_serving_GetModelStatusResponse_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_angel_serving_GetModelStatusResponse_descriptor,
          new java.lang.String[] { "ModelVersionStatus", "TypeMap", "Dim", });
      internal_static_angel_serving_GetModelStatusResponse_TypeMapEntry_descriptor =
        internal_static_angel_serving_GetModelStatusResponse_descriptor.getNestedTypes().get(0);
      internal_static_angel_serving_GetModelStatusResponse_TypeMapEntry_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_angel_serving_GetModelStatusResponse_TypeMapEntry_descriptor,
          new java.lang.String[] { "Key", "Value", });
      com.tencent.angel.serving.apis.common.ModelSpecProtos.getDescriptor();
      com.tencent.angel.serving.apis.common.TypesProtos.getDescriptor();
      com.tencent.angel.serving.apis.modelmgr.StatusProtos.getDescriptor();
    }
  
    // @@protoc_insertion_point(outer_class_scope)
  }
  