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

package be.iminds.ilabt.jfed.log.cache;

public final class ApiCallDetailsProtos {
  private ApiCallDetailsProtos() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registry.add(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.username);
    registry.add(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.hostkey);
  }
  public interface PBApiCallDetailsOrBuilder extends
      // @@protoc_insertion_point(interface_extends:apicalldetails_cache.PBApiCallDetails)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>required int32 id = 1;</code>
     */
    boolean hasId();
    /**
     * <code>required int32 id = 1;</code>
     */
    int getId();

    /**
     * <code>optional string authorityName = 2;</code>
     */
    boolean hasAuthorityName();
    /**
     * <code>optional string authorityName = 2;</code>
     */
    java.lang.String getAuthorityName();
    /**
     * <code>optional string authorityName = 2;</code>
     */
    com.google.protobuf.ByteString
        getAuthorityNameBytes();

    /**
     * <code>optional string authorityUrn = 3;</code>
     */
    boolean hasAuthorityUrn();
    /**
     * <code>optional string authorityUrn = 3;</code>
     */
    java.lang.String getAuthorityUrn();
    /**
     * <code>optional string authorityUrn = 3;</code>
     */
    com.google.protobuf.ByteString
        getAuthorityUrnBytes();

    /**
     * <code>optional string baseServerUrl = 4;</code>
     */
    boolean hasBaseServerUrl();
    /**
     * <code>optional string baseServerUrl = 4;</code>
     */
    java.lang.String getBaseServerUrl();
    /**
     * <code>optional string baseServerUrl = 4;</code>
     */
    com.google.protobuf.ByteString
        getBaseServerUrlBytes();

    /**
     * <code>optional string callServerUrl = 5;</code>
     */
    boolean hasCallServerUrl();
    /**
     * <code>optional string callServerUrl = 5;</code>
     */
    java.lang.String getCallServerUrl();
    /**
     * <code>optional string callServerUrl = 5;</code>
     */
    com.google.protobuf.ByteString
        getCallServerUrlBytes();

    /**
     * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
     */
    boolean hasProxyInfo();
    /**
     * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
     */
    be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo getProxyInfo();
    /**
     * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
     */
    be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfoOrBuilder getProxyInfoOrBuilder();

    /**
     * <code>optional string connectionSslAuthUserUrn = 7;</code>
     */
    boolean hasConnectionSslAuthUserUrn();
    /**
     * <code>optional string connectionSslAuthUserUrn = 7;</code>
     */
    java.lang.String getConnectionSslAuthUserUrn();
    /**
     * <code>optional string connectionSslAuthUserUrn = 7;</code>
     */
    com.google.protobuf.ByteString
        getConnectionSslAuthUserUrnBytes();

    /**
     * <code>optional string connectionSslAuthUserCertificates = 8;</code>
     */
    boolean hasConnectionSslAuthUserCertificates();
    /**
     * <code>optional string connectionSslAuthUserCertificates = 8;</code>
     */
    java.lang.String getConnectionSslAuthUserCertificates();
    /**
     * <code>optional string connectionSslAuthUserCertificates = 8;</code>
     */
    com.google.protobuf.ByteString
        getConnectionSslAuthUserCertificatesBytes();

    /**
     * <code>optional string connectionId = 9;</code>
     */
    boolean hasConnectionId();
    /**
     * <code>optional string connectionId = 9;</code>
     */
    java.lang.String getConnectionId();
    /**
     * <code>optional string connectionId = 9;</code>
     */
    com.google.protobuf.ByteString
        getConnectionIdBytes();

    /**
     * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
     */
    boolean hasConnectionBasicHttpAuthUsername();
    /**
     * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
     */
    java.lang.String getConnectionBasicHttpAuthUsername();
    /**
     * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
     */
    com.google.protobuf.ByteString
        getConnectionBasicHttpAuthUsernameBytes();

    /**
     * <code>optional string connectionAuthenticationMethod = 11;</code>
     */
    boolean hasConnectionAuthenticationMethod();
    /**
     * <code>optional string connectionAuthenticationMethod = 11;</code>
     */
    java.lang.String getConnectionAuthenticationMethod();
    /**
     * <code>optional string connectionAuthenticationMethod = 11;</code>
     */
    com.google.protobuf.ByteString
        getConnectionAuthenticationMethodBytes();

    /**
     * <code>optional string connectionProtocol = 12;</code>
     */
    boolean hasConnectionProtocol();
    /**
     * <code>optional string connectionProtocol = 12;</code>
     */
    java.lang.String getConnectionProtocol();
    /**
     * <code>optional string connectionProtocol = 12;</code>
     */
    com.google.protobuf.ByteString
        getConnectionProtocolBytes();

    /**
     * <code>optional string connectionType = 13;</code>
     */
    boolean hasConnectionType();
    /**
     * <code>optional string connectionType = 13;</code>
     */
    java.lang.String getConnectionType();
    /**
     * <code>optional string connectionType = 13;</code>
     */
    com.google.protobuf.ByteString
        getConnectionTypeBytes();

    /**
     * <code>optional string httpRequestLine = 20;</code>
     */
    boolean hasHttpRequestLine();
    /**
     * <code>optional string httpRequestLine = 20;</code>
     */
    java.lang.String getHttpRequestLine();
    /**
     * <code>optional string httpRequestLine = 20;</code>
     */
    com.google.protobuf.ByteString
        getHttpRequestLineBytes();

    /**
     * <code>optional string httpRequestHeaders = 21;</code>
     */
    boolean hasHttpRequestHeaders();
    /**
     * <code>optional string httpRequestHeaders = 21;</code>
     */
    java.lang.String getHttpRequestHeaders();
    /**
     * <code>optional string httpRequestHeaders = 21;</code>
     */
    com.google.protobuf.ByteString
        getHttpRequestHeadersBytes();

    /**
     * <code>optional string httpRequest = 22;</code>
     */
    boolean hasHttpRequest();
    /**
     * <code>optional string httpRequest = 22;</code>
     */
    java.lang.String getHttpRequest();
    /**
     * <code>optional string httpRequest = 22;</code>
     */
    com.google.protobuf.ByteString
        getHttpRequestBytes();

    /**
     * <code>optional string httpStatusLine = 23;</code>
     */
    boolean hasHttpStatusLine();
    /**
     * <code>optional string httpStatusLine = 23;</code>
     */
    java.lang.String getHttpStatusLine();
    /**
     * <code>optional string httpStatusLine = 23;</code>
     */
    com.google.protobuf.ByteString
        getHttpStatusLineBytes();

    /**
     * <code>optional string httpResponseHeaders = 24;</code>
     */
    boolean hasHttpResponseHeaders();
    /**
     * <code>optional string httpResponseHeaders = 24;</code>
     */
    java.lang.String getHttpResponseHeaders();
    /**
     * <code>optional string httpResponseHeaders = 24;</code>
     */
    com.google.protobuf.ByteString
        getHttpResponseHeadersBytes();

    /**
     * <code>optional string httpReply = 25;</code>
     */
    boolean hasHttpReply();
    /**
     * <code>optional string httpReply = 25;</code>
     */
    java.lang.String getHttpReply();
    /**
     * <code>optional string httpReply = 25;</code>
     */
    com.google.protobuf.ByteString
        getHttpReplyBytes();

    /**
     * <code>optional string xmlRpcRequestJsonString = 30;</code>
     */
    boolean hasXmlRpcRequestJsonString();
    /**
     * <code>optional string xmlRpcRequestJsonString = 30;</code>
     */
    java.lang.String getXmlRpcRequestJsonString();
    /**
     * <code>optional string xmlRpcRequestJsonString = 30;</code>
     */
    com.google.protobuf.ByteString
        getXmlRpcRequestJsonStringBytes();

    /**
     * <code>optional string xmlRpcReplyJsonString = 31;</code>
     */
    boolean hasXmlRpcReplyJsonString();
    /**
     * <code>optional string xmlRpcReplyJsonString = 31;</code>
     */
    java.lang.String getXmlRpcReplyJsonString();
    /**
     * <code>optional string xmlRpcReplyJsonString = 31;</code>
     */
    com.google.protobuf.ByteString
        getXmlRpcReplyJsonStringBytes();

    /**
     * <code>optional string apiName = 40;</code>
     */
    boolean hasApiName();
    /**
     * <code>optional string apiName = 40;</code>
     */
    java.lang.String getApiName();
    /**
     * <code>optional string apiName = 40;</code>
     */
    com.google.protobuf.ByteString
        getApiNameBytes();

    /**
     * <code>optional string javaMethodName = 41;</code>
     */
    boolean hasJavaMethodName();
    /**
     * <code>optional string javaMethodName = 41;</code>
     */
    java.lang.String getJavaMethodName();
    /**
     * <code>optional string javaMethodName = 41;</code>
     */
    com.google.protobuf.ByteString
        getJavaMethodNameBytes();

    /**
     * <code>optional string geniMethodName = 42;</code>
     */
    boolean hasGeniMethodName();
    /**
     * <code>optional string geniMethodName = 42;</code>
     */
    java.lang.String getGeniMethodName();
    /**
     * <code>optional string geniMethodName = 42;</code>
     */
    com.google.protobuf.ByteString
        getGeniMethodNameBytes();

    /**
     * <code>optional string methodParameters = 43;</code>
     */
    boolean hasMethodParameters();
    /**
     * <code>optional string methodParameters = 43;</code>
     */
    java.lang.String getMethodParameters();
    /**
     * <code>optional string methodParameters = 43;</code>
     */
    com.google.protobuf.ByteString
        getMethodParametersBytes();

    /**
     * <code>optional string xmlRpcGeniValue = 45;</code>
     */
    boolean hasXmlRpcGeniValue();
    /**
     * <code>optional string xmlRpcGeniValue = 45;</code>
     */
    java.lang.String getXmlRpcGeniValue();
    /**
     * <code>optional string xmlRpcGeniValue = 45;</code>
     */
    com.google.protobuf.ByteString
        getXmlRpcGeniValueBytes();

    /**
     * <code>optional string xmlRpcGeniOutput = 46;</code>
     */
    boolean hasXmlRpcGeniOutput();
    /**
     * <code>optional string xmlRpcGeniOutput = 46;</code>
     */
    java.lang.String getXmlRpcGeniOutput();
    /**
     * <code>optional string xmlRpcGeniOutput = 46;</code>
     */
    com.google.protobuf.ByteString
        getXmlRpcGeniOutputBytes();

    /**
     * <code>optional string xmlRpcGeniCode = 47;</code>
     */
    boolean hasXmlRpcGeniCode();
    /**
     * <code>optional string xmlRpcGeniCode = 47;</code>
     */
    java.lang.String getXmlRpcGeniCode();
    /**
     * <code>optional string xmlRpcGeniCode = 47;</code>
     */
    com.google.protobuf.ByteString
        getXmlRpcGeniCodeBytes();

    /**
     * <code>optional int32 geniResponseCode = 50;</code>
     *
     * <pre>
     *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
     * </pre>
     */
    boolean hasGeniResponseCode();
    /**
     * <code>optional int32 geniResponseCode = 50;</code>
     *
     * <pre>
     *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
     * </pre>
     */
    int getGeniResponseCode();

    /**
     * <code>optional string geniResponseCodeDescription = 51;</code>
     */
    boolean hasGeniResponseCodeDescription();
    /**
     * <code>optional string geniResponseCodeDescription = 51;</code>
     */
    java.lang.String getGeniResponseCodeDescription();
    /**
     * <code>optional string geniResponseCodeDescription = 51;</code>
     */
    com.google.protobuf.ByteString
        getGeniResponseCodeDescriptionBytes();

    /**
     * <code>optional bool geniCodeIsSuccess = 52;</code>
     */
    boolean hasGeniCodeIsSuccess();
    /**
     * <code>optional bool geniCodeIsSuccess = 52;</code>
     */
    boolean getGeniCodeIsSuccess();

    /**
     * <code>optional bool geniCodeIsBusy = 53;</code>
     */
    boolean hasGeniCodeIsBusy();
    /**
     * <code>optional bool geniCodeIsBusy = 53;</code>
     */
    boolean getGeniCodeIsBusy();

    /**
     * <code>optional string geniResponseOutput = 54;</code>
     */
    boolean hasGeniResponseOutput();
    /**
     * <code>optional string geniResponseOutput = 54;</code>
     */
    java.lang.String getGeniResponseOutput();
    /**
     * <code>optional string geniResponseOutput = 54;</code>
     */
    com.google.protobuf.ByteString
        getGeniResponseOutputBytes();

    /**
     * <code>optional int64 startTime = 60;</code>
     */
    boolean hasStartTime();
    /**
     * <code>optional int64 startTime = 60;</code>
     */
    long getStartTime();

    /**
     * <code>optional int64 stopTime = 61;</code>
     */
    boolean hasStopTime();
    /**
     * <code>optional int64 stopTime = 61;</code>
     */
    long getStopTime();

    /**
     * <code>optional string rawValue = 65;</code>
     */
    boolean hasRawValue();
    /**
     * <code>optional string rawValue = 65;</code>
     */
    java.lang.String getRawValue();
    /**
     * <code>optional string rawValue = 65;</code>
     */
    com.google.protobuf.ByteString
        getRawValueBytes();

    /**
     * <code>optional string protogeniSpewLogUrl = 69;</code>
     */
    boolean hasProtogeniSpewLogUrl();
    /**
     * <code>optional string protogeniSpewLogUrl = 69;</code>
     */
    java.lang.String getProtogeniSpewLogUrl();
    /**
     * <code>optional string protogeniSpewLogUrl = 69;</code>
     */
    com.google.protobuf.ByteString
        getProtogeniSpewLogUrlBytes();

    /**
     * <code>optional string exceptionString = 70;</code>
     */
    boolean hasExceptionString();
    /**
     * <code>optional string exceptionString = 70;</code>
     */
    java.lang.String getExceptionString();
    /**
     * <code>optional string exceptionString = 70;</code>
     */
    com.google.protobuf.ByteString
        getExceptionStringBytes();
  }
  /**
   * Protobuf type {@code apicalldetails_cache.PBApiCallDetails}
   */
  public static final class PBApiCallDetails extends
      com.google.protobuf.GeneratedMessage implements
      // @@protoc_insertion_point(message_implements:apicalldetails_cache.PBApiCallDetails)
      PBApiCallDetailsOrBuilder {
    // Use PBApiCallDetails.newBuilder() to construct.
    private PBApiCallDetails(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private PBApiCallDetails(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final PBApiCallDetails defaultInstance;
    public static PBApiCallDetails getDefaultInstance() {
      return defaultInstance;
    }

    public PBApiCallDetails getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private PBApiCallDetails(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      int mutable_bitField1_ = 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 (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 8: {
              bitField0_ |= 0x00000001;
              id_ = input.readInt32();
              break;
            }
            case 18: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000002;
              authorityName_ = bs;
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000004;
              authorityUrn_ = bs;
              break;
            }
            case 34: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000008;
              baseServerUrl_ = bs;
              break;
            }
            case 42: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000010;
              callServerUrl_ = bs;
              break;
            }
            case 50: {
              be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder subBuilder = null;
              if (((bitField0_ & 0x00000020) == 0x00000020)) {
                subBuilder = proxyInfo_.toBuilder();
              }
              proxyInfo_ = input.readMessage(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(proxyInfo_);
                proxyInfo_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000020;
              break;
            }
            case 58: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000040;
              connectionSslAuthUserUrn_ = bs;
              break;
            }
            case 66: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000080;
              connectionSslAuthUserCertificates_ = bs;
              break;
            }
            case 74: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000100;
              connectionId_ = bs;
              break;
            }
            case 82: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000200;
              connectionBasicHttpAuthUsername_ = bs;
              break;
            }
            case 90: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000400;
              connectionAuthenticationMethod_ = bs;
              break;
            }
            case 98: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000800;
              connectionProtocol_ = bs;
              break;
            }
            case 106: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00001000;
              connectionType_ = bs;
              break;
            }
            case 162: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00002000;
              httpRequestLine_ = bs;
              break;
            }
            case 170: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00004000;
              httpRequestHeaders_ = bs;
              break;
            }
            case 178: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00008000;
              httpRequest_ = bs;
              break;
            }
            case 186: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00010000;
              httpStatusLine_ = bs;
              break;
            }
            case 194: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00020000;
              httpResponseHeaders_ = bs;
              break;
            }
            case 202: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00040000;
              httpReply_ = bs;
              break;
            }
            case 242: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00080000;
              xmlRpcRequestJsonString_ = bs;
              break;
            }
            case 250: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00100000;
              xmlRpcReplyJsonString_ = bs;
              break;
            }
            case 322: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00200000;
              apiName_ = bs;
              break;
            }
            case 330: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00400000;
              javaMethodName_ = bs;
              break;
            }
            case 338: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00800000;
              geniMethodName_ = bs;
              break;
            }
            case 346: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x01000000;
              methodParameters_ = bs;
              break;
            }
            case 362: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x02000000;
              xmlRpcGeniValue_ = bs;
              break;
            }
            case 370: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x04000000;
              xmlRpcGeniOutput_ = bs;
              break;
            }
            case 378: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x08000000;
              xmlRpcGeniCode_ = bs;
              break;
            }
            case 400: {
              bitField0_ |= 0x10000000;
              geniResponseCode_ = input.readInt32();
              break;
            }
            case 410: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x20000000;
              geniResponseCodeDescription_ = bs;
              break;
            }
            case 416: {
              bitField0_ |= 0x40000000;
              geniCodeIsSuccess_ = input.readBool();
              break;
            }
            case 424: {
              bitField0_ |= 0x80000000;
              geniCodeIsBusy_ = input.readBool();
              break;
            }
            case 434: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField1_ |= 0x00000001;
              geniResponseOutput_ = bs;
              break;
            }
            case 480: {
              bitField1_ |= 0x00000002;
              startTime_ = input.readInt64();
              break;
            }
            case 488: {
              bitField1_ |= 0x00000004;
              stopTime_ = input.readInt64();
              break;
            }
            case 522: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField1_ |= 0x00000008;
              rawValue_ = bs;
              break;
            }
            case 554: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField1_ |= 0x00000010;
              protogeniSpewLogUrl_ = bs;
              break;
            }
            case 562: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField1_ |= 0x00000020;
              exceptionString_ = bs;
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBApiCallDetails_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBApiCallDetails_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.class, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.Builder.class);
    }

    public static com.google.protobuf.Parser<PBApiCallDetails> PARSER =
        new com.google.protobuf.AbstractParser<PBApiCallDetails>() {
      public PBApiCallDetails parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new PBApiCallDetails(input, extensionRegistry);
      }
    };

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

    private int bitField0_;
    private int bitField1_;
    public static final int ID_FIELD_NUMBER = 1;
    private int id_;
    /**
     * <code>required int32 id = 1;</code>
     */
    public boolean hasId() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * <code>required int32 id = 1;</code>
     */
    public int getId() {
      return id_;
    }

    public static final int AUTHORITYNAME_FIELD_NUMBER = 2;
    private java.lang.Object authorityName_;
    /**
     * <code>optional string authorityName = 2;</code>
     */
    public boolean hasAuthorityName() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * <code>optional string authorityName = 2;</code>
     */
    public java.lang.String getAuthorityName() {
      java.lang.Object ref = authorityName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          authorityName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string authorityName = 2;</code>
     */
    public com.google.protobuf.ByteString
        getAuthorityNameBytes() {
      java.lang.Object ref = authorityName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        authorityName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int AUTHORITYURN_FIELD_NUMBER = 3;
    private java.lang.Object authorityUrn_;
    /**
     * <code>optional string authorityUrn = 3;</code>
     */
    public boolean hasAuthorityUrn() {
      return ((bitField0_ & 0x00000004) == 0x00000004);
    }
    /**
     * <code>optional string authorityUrn = 3;</code>
     */
    public java.lang.String getAuthorityUrn() {
      java.lang.Object ref = authorityUrn_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          authorityUrn_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string authorityUrn = 3;</code>
     */
    public com.google.protobuf.ByteString
        getAuthorityUrnBytes() {
      java.lang.Object ref = authorityUrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        authorityUrn_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int BASESERVERURL_FIELD_NUMBER = 4;
    private java.lang.Object baseServerUrl_;
    /**
     * <code>optional string baseServerUrl = 4;</code>
     */
    public boolean hasBaseServerUrl() {
      return ((bitField0_ & 0x00000008) == 0x00000008);
    }
    /**
     * <code>optional string baseServerUrl = 4;</code>
     */
    public java.lang.String getBaseServerUrl() {
      java.lang.Object ref = baseServerUrl_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          baseServerUrl_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string baseServerUrl = 4;</code>
     */
    public com.google.protobuf.ByteString
        getBaseServerUrlBytes() {
      java.lang.Object ref = baseServerUrl_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        baseServerUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CALLSERVERURL_FIELD_NUMBER = 5;
    private java.lang.Object callServerUrl_;
    /**
     * <code>optional string callServerUrl = 5;</code>
     */
    public boolean hasCallServerUrl() {
      return ((bitField0_ & 0x00000010) == 0x00000010);
    }
    /**
     * <code>optional string callServerUrl = 5;</code>
     */
    public java.lang.String getCallServerUrl() {
      java.lang.Object ref = callServerUrl_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          callServerUrl_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string callServerUrl = 5;</code>
     */
    public com.google.protobuf.ByteString
        getCallServerUrlBytes() {
      java.lang.Object ref = callServerUrl_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        callServerUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int PROXYINFO_FIELD_NUMBER = 6;
    private be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo proxyInfo_;
    /**
     * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
     */
    public boolean hasProxyInfo() {
      return ((bitField0_ & 0x00000020) == 0x00000020);
    }
    /**
     * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
     */
    public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo getProxyInfo() {
      return proxyInfo_;
    }
    /**
     * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
     */
    public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfoOrBuilder getProxyInfoOrBuilder() {
      return proxyInfo_;
    }

    public static final int CONNECTIONSSLAUTHUSERURN_FIELD_NUMBER = 7;
    private java.lang.Object connectionSslAuthUserUrn_;
    /**
     * <code>optional string connectionSslAuthUserUrn = 7;</code>
     */
    public boolean hasConnectionSslAuthUserUrn() {
      return ((bitField0_ & 0x00000040) == 0x00000040);
    }
    /**
     * <code>optional string connectionSslAuthUserUrn = 7;</code>
     */
    public java.lang.String getConnectionSslAuthUserUrn() {
      java.lang.Object ref = connectionSslAuthUserUrn_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionSslAuthUserUrn_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionSslAuthUserUrn = 7;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionSslAuthUserUrnBytes() {
      java.lang.Object ref = connectionSslAuthUserUrn_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionSslAuthUserUrn_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONNECTIONSSLAUTHUSERCERTIFICATES_FIELD_NUMBER = 8;
    private java.lang.Object connectionSslAuthUserCertificates_;
    /**
     * <code>optional string connectionSslAuthUserCertificates = 8;</code>
     */
    public boolean hasConnectionSslAuthUserCertificates() {
      return ((bitField0_ & 0x00000080) == 0x00000080);
    }
    /**
     * <code>optional string connectionSslAuthUserCertificates = 8;</code>
     */
    public java.lang.String getConnectionSslAuthUserCertificates() {
      java.lang.Object ref = connectionSslAuthUserCertificates_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionSslAuthUserCertificates_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionSslAuthUserCertificates = 8;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionSslAuthUserCertificatesBytes() {
      java.lang.Object ref = connectionSslAuthUserCertificates_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionSslAuthUserCertificates_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONNECTIONID_FIELD_NUMBER = 9;
    private java.lang.Object connectionId_;
    /**
     * <code>optional string connectionId = 9;</code>
     */
    public boolean hasConnectionId() {
      return ((bitField0_ & 0x00000100) == 0x00000100);
    }
    /**
     * <code>optional string connectionId = 9;</code>
     */
    public java.lang.String getConnectionId() {
      java.lang.Object ref = connectionId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionId_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionId = 9;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionIdBytes() {
      java.lang.Object ref = connectionId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONNECTIONBASICHTTPAUTHUSERNAME_FIELD_NUMBER = 10;
    private java.lang.Object connectionBasicHttpAuthUsername_;
    /**
     * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
     */
    public boolean hasConnectionBasicHttpAuthUsername() {
      return ((bitField0_ & 0x00000200) == 0x00000200);
    }
    /**
     * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
     */
    public java.lang.String getConnectionBasicHttpAuthUsername() {
      java.lang.Object ref = connectionBasicHttpAuthUsername_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionBasicHttpAuthUsername_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionBasicHttpAuthUsernameBytes() {
      java.lang.Object ref = connectionBasicHttpAuthUsername_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionBasicHttpAuthUsername_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONNECTIONAUTHENTICATIONMETHOD_FIELD_NUMBER = 11;
    private java.lang.Object connectionAuthenticationMethod_;
    /**
     * <code>optional string connectionAuthenticationMethod = 11;</code>
     */
    public boolean hasConnectionAuthenticationMethod() {
      return ((bitField0_ & 0x00000400) == 0x00000400);
    }
    /**
     * <code>optional string connectionAuthenticationMethod = 11;</code>
     */
    public java.lang.String getConnectionAuthenticationMethod() {
      java.lang.Object ref = connectionAuthenticationMethod_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionAuthenticationMethod_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionAuthenticationMethod = 11;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionAuthenticationMethodBytes() {
      java.lang.Object ref = connectionAuthenticationMethod_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionAuthenticationMethod_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONNECTIONPROTOCOL_FIELD_NUMBER = 12;
    private java.lang.Object connectionProtocol_;
    /**
     * <code>optional string connectionProtocol = 12;</code>
     */
    public boolean hasConnectionProtocol() {
      return ((bitField0_ & 0x00000800) == 0x00000800);
    }
    /**
     * <code>optional string connectionProtocol = 12;</code>
     */
    public java.lang.String getConnectionProtocol() {
      java.lang.Object ref = connectionProtocol_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionProtocol_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionProtocol = 12;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionProtocolBytes() {
      java.lang.Object ref = connectionProtocol_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionProtocol_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int CONNECTIONTYPE_FIELD_NUMBER = 13;
    private java.lang.Object connectionType_;
    /**
     * <code>optional string connectionType = 13;</code>
     */
    public boolean hasConnectionType() {
      return ((bitField0_ & 0x00001000) == 0x00001000);
    }
    /**
     * <code>optional string connectionType = 13;</code>
     */
    public java.lang.String getConnectionType() {
      java.lang.Object ref = connectionType_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          connectionType_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string connectionType = 13;</code>
     */
    public com.google.protobuf.ByteString
        getConnectionTypeBytes() {
      java.lang.Object ref = connectionType_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        connectionType_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HTTPREQUESTLINE_FIELD_NUMBER = 20;
    private java.lang.Object httpRequestLine_;
    /**
     * <code>optional string httpRequestLine = 20;</code>
     */
    public boolean hasHttpRequestLine() {
      return ((bitField0_ & 0x00002000) == 0x00002000);
    }
    /**
     * <code>optional string httpRequestLine = 20;</code>
     */
    public java.lang.String getHttpRequestLine() {
      java.lang.Object ref = httpRequestLine_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          httpRequestLine_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string httpRequestLine = 20;</code>
     */
    public com.google.protobuf.ByteString
        getHttpRequestLineBytes() {
      java.lang.Object ref = httpRequestLine_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        httpRequestLine_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HTTPREQUESTHEADERS_FIELD_NUMBER = 21;
    private java.lang.Object httpRequestHeaders_;
    /**
     * <code>optional string httpRequestHeaders = 21;</code>
     */
    public boolean hasHttpRequestHeaders() {
      return ((bitField0_ & 0x00004000) == 0x00004000);
    }
    /**
     * <code>optional string httpRequestHeaders = 21;</code>
     */
    public java.lang.String getHttpRequestHeaders() {
      java.lang.Object ref = httpRequestHeaders_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          httpRequestHeaders_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string httpRequestHeaders = 21;</code>
     */
    public com.google.protobuf.ByteString
        getHttpRequestHeadersBytes() {
      java.lang.Object ref = httpRequestHeaders_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        httpRequestHeaders_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HTTPREQUEST_FIELD_NUMBER = 22;
    private java.lang.Object httpRequest_;
    /**
     * <code>optional string httpRequest = 22;</code>
     */
    public boolean hasHttpRequest() {
      return ((bitField0_ & 0x00008000) == 0x00008000);
    }
    /**
     * <code>optional string httpRequest = 22;</code>
     */
    public java.lang.String getHttpRequest() {
      java.lang.Object ref = httpRequest_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          httpRequest_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string httpRequest = 22;</code>
     */
    public com.google.protobuf.ByteString
        getHttpRequestBytes() {
      java.lang.Object ref = httpRequest_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        httpRequest_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HTTPSTATUSLINE_FIELD_NUMBER = 23;
    private java.lang.Object httpStatusLine_;
    /**
     * <code>optional string httpStatusLine = 23;</code>
     */
    public boolean hasHttpStatusLine() {
      return ((bitField0_ & 0x00010000) == 0x00010000);
    }
    /**
     * <code>optional string httpStatusLine = 23;</code>
     */
    public java.lang.String getHttpStatusLine() {
      java.lang.Object ref = httpStatusLine_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          httpStatusLine_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string httpStatusLine = 23;</code>
     */
    public com.google.protobuf.ByteString
        getHttpStatusLineBytes() {
      java.lang.Object ref = httpStatusLine_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        httpStatusLine_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HTTPRESPONSEHEADERS_FIELD_NUMBER = 24;
    private java.lang.Object httpResponseHeaders_;
    /**
     * <code>optional string httpResponseHeaders = 24;</code>
     */
    public boolean hasHttpResponseHeaders() {
      return ((bitField0_ & 0x00020000) == 0x00020000);
    }
    /**
     * <code>optional string httpResponseHeaders = 24;</code>
     */
    public java.lang.String getHttpResponseHeaders() {
      java.lang.Object ref = httpResponseHeaders_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          httpResponseHeaders_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string httpResponseHeaders = 24;</code>
     */
    public com.google.protobuf.ByteString
        getHttpResponseHeadersBytes() {
      java.lang.Object ref = httpResponseHeaders_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        httpResponseHeaders_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int HTTPREPLY_FIELD_NUMBER = 25;
    private java.lang.Object httpReply_;
    /**
     * <code>optional string httpReply = 25;</code>
     */
    public boolean hasHttpReply() {
      return ((bitField0_ & 0x00040000) == 0x00040000);
    }
    /**
     * <code>optional string httpReply = 25;</code>
     */
    public java.lang.String getHttpReply() {
      java.lang.Object ref = httpReply_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          httpReply_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string httpReply = 25;</code>
     */
    public com.google.protobuf.ByteString
        getHttpReplyBytes() {
      java.lang.Object ref = httpReply_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        httpReply_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int XMLRPCREQUESTJSONSTRING_FIELD_NUMBER = 30;
    private java.lang.Object xmlRpcRequestJsonString_;
    /**
     * <code>optional string xmlRpcRequestJsonString = 30;</code>
     */
    public boolean hasXmlRpcRequestJsonString() {
      return ((bitField0_ & 0x00080000) == 0x00080000);
    }
    /**
     * <code>optional string xmlRpcRequestJsonString = 30;</code>
     */
    public java.lang.String getXmlRpcRequestJsonString() {
      java.lang.Object ref = xmlRpcRequestJsonString_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          xmlRpcRequestJsonString_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string xmlRpcRequestJsonString = 30;</code>
     */
    public com.google.protobuf.ByteString
        getXmlRpcRequestJsonStringBytes() {
      java.lang.Object ref = xmlRpcRequestJsonString_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        xmlRpcRequestJsonString_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int XMLRPCREPLYJSONSTRING_FIELD_NUMBER = 31;
    private java.lang.Object xmlRpcReplyJsonString_;
    /**
     * <code>optional string xmlRpcReplyJsonString = 31;</code>
     */
    public boolean hasXmlRpcReplyJsonString() {
      return ((bitField0_ & 0x00100000) == 0x00100000);
    }
    /**
     * <code>optional string xmlRpcReplyJsonString = 31;</code>
     */
    public java.lang.String getXmlRpcReplyJsonString() {
      java.lang.Object ref = xmlRpcReplyJsonString_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          xmlRpcReplyJsonString_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string xmlRpcReplyJsonString = 31;</code>
     */
    public com.google.protobuf.ByteString
        getXmlRpcReplyJsonStringBytes() {
      java.lang.Object ref = xmlRpcReplyJsonString_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        xmlRpcReplyJsonString_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int APINAME_FIELD_NUMBER = 40;
    private java.lang.Object apiName_;
    /**
     * <code>optional string apiName = 40;</code>
     */
    public boolean hasApiName() {
      return ((bitField0_ & 0x00200000) == 0x00200000);
    }
    /**
     * <code>optional string apiName = 40;</code>
     */
    public java.lang.String getApiName() {
      java.lang.Object ref = apiName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          apiName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string apiName = 40;</code>
     */
    public com.google.protobuf.ByteString
        getApiNameBytes() {
      java.lang.Object ref = apiName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        apiName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int JAVAMETHODNAME_FIELD_NUMBER = 41;
    private java.lang.Object javaMethodName_;
    /**
     * <code>optional string javaMethodName = 41;</code>
     */
    public boolean hasJavaMethodName() {
      return ((bitField0_ & 0x00400000) == 0x00400000);
    }
    /**
     * <code>optional string javaMethodName = 41;</code>
     */
    public java.lang.String getJavaMethodName() {
      java.lang.Object ref = javaMethodName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          javaMethodName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string javaMethodName = 41;</code>
     */
    public com.google.protobuf.ByteString
        getJavaMethodNameBytes() {
      java.lang.Object ref = javaMethodName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        javaMethodName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int GENIMETHODNAME_FIELD_NUMBER = 42;
    private java.lang.Object geniMethodName_;
    /**
     * <code>optional string geniMethodName = 42;</code>
     */
    public boolean hasGeniMethodName() {
      return ((bitField0_ & 0x00800000) == 0x00800000);
    }
    /**
     * <code>optional string geniMethodName = 42;</code>
     */
    public java.lang.String getGeniMethodName() {
      java.lang.Object ref = geniMethodName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          geniMethodName_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string geniMethodName = 42;</code>
     */
    public com.google.protobuf.ByteString
        getGeniMethodNameBytes() {
      java.lang.Object ref = geniMethodName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        geniMethodName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int METHODPARAMETERS_FIELD_NUMBER = 43;
    private java.lang.Object methodParameters_;
    /**
     * <code>optional string methodParameters = 43;</code>
     */
    public boolean hasMethodParameters() {
      return ((bitField0_ & 0x01000000) == 0x01000000);
    }
    /**
     * <code>optional string methodParameters = 43;</code>
     */
    public java.lang.String getMethodParameters() {
      java.lang.Object ref = methodParameters_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          methodParameters_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string methodParameters = 43;</code>
     */
    public com.google.protobuf.ByteString
        getMethodParametersBytes() {
      java.lang.Object ref = methodParameters_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        methodParameters_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int XMLRPCGENIVALUE_FIELD_NUMBER = 45;
    private java.lang.Object xmlRpcGeniValue_;
    /**
     * <code>optional string xmlRpcGeniValue = 45;</code>
     */
    public boolean hasXmlRpcGeniValue() {
      return ((bitField0_ & 0x02000000) == 0x02000000);
    }
    /**
     * <code>optional string xmlRpcGeniValue = 45;</code>
     */
    public java.lang.String getXmlRpcGeniValue() {
      java.lang.Object ref = xmlRpcGeniValue_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          xmlRpcGeniValue_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string xmlRpcGeniValue = 45;</code>
     */
    public com.google.protobuf.ByteString
        getXmlRpcGeniValueBytes() {
      java.lang.Object ref = xmlRpcGeniValue_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        xmlRpcGeniValue_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int XMLRPCGENIOUTPUT_FIELD_NUMBER = 46;
    private java.lang.Object xmlRpcGeniOutput_;
    /**
     * <code>optional string xmlRpcGeniOutput = 46;</code>
     */
    public boolean hasXmlRpcGeniOutput() {
      return ((bitField0_ & 0x04000000) == 0x04000000);
    }
    /**
     * <code>optional string xmlRpcGeniOutput = 46;</code>
     */
    public java.lang.String getXmlRpcGeniOutput() {
      java.lang.Object ref = xmlRpcGeniOutput_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          xmlRpcGeniOutput_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string xmlRpcGeniOutput = 46;</code>
     */
    public com.google.protobuf.ByteString
        getXmlRpcGeniOutputBytes() {
      java.lang.Object ref = xmlRpcGeniOutput_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        xmlRpcGeniOutput_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int XMLRPCGENICODE_FIELD_NUMBER = 47;
    private java.lang.Object xmlRpcGeniCode_;
    /**
     * <code>optional string xmlRpcGeniCode = 47;</code>
     */
    public boolean hasXmlRpcGeniCode() {
      return ((bitField0_ & 0x08000000) == 0x08000000);
    }
    /**
     * <code>optional string xmlRpcGeniCode = 47;</code>
     */
    public java.lang.String getXmlRpcGeniCode() {
      java.lang.Object ref = xmlRpcGeniCode_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          xmlRpcGeniCode_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string xmlRpcGeniCode = 47;</code>
     */
    public com.google.protobuf.ByteString
        getXmlRpcGeniCodeBytes() {
      java.lang.Object ref = xmlRpcGeniCode_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        xmlRpcGeniCode_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int GENIRESPONSECODE_FIELD_NUMBER = 50;
    private int geniResponseCode_;
    /**
     * <code>optional int32 geniResponseCode = 50;</code>
     *
     * <pre>
     *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
     * </pre>
     */
    public boolean hasGeniResponseCode() {
      return ((bitField0_ & 0x10000000) == 0x10000000);
    }
    /**
     * <code>optional int32 geniResponseCode = 50;</code>
     *
     * <pre>
     *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
     * </pre>
     */
    public int getGeniResponseCode() {
      return geniResponseCode_;
    }

    public static final int GENIRESPONSECODEDESCRIPTION_FIELD_NUMBER = 51;
    private java.lang.Object geniResponseCodeDescription_;
    /**
     * <code>optional string geniResponseCodeDescription = 51;</code>
     */
    public boolean hasGeniResponseCodeDescription() {
      return ((bitField0_ & 0x20000000) == 0x20000000);
    }
    /**
     * <code>optional string geniResponseCodeDescription = 51;</code>
     */
    public java.lang.String getGeniResponseCodeDescription() {
      java.lang.Object ref = geniResponseCodeDescription_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          geniResponseCodeDescription_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string geniResponseCodeDescription = 51;</code>
     */
    public com.google.protobuf.ByteString
        getGeniResponseCodeDescriptionBytes() {
      java.lang.Object ref = geniResponseCodeDescription_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        geniResponseCodeDescription_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int GENICODEISSUCCESS_FIELD_NUMBER = 52;
    private boolean geniCodeIsSuccess_;
    /**
     * <code>optional bool geniCodeIsSuccess = 52;</code>
     */
    public boolean hasGeniCodeIsSuccess() {
      return ((bitField0_ & 0x40000000) == 0x40000000);
    }
    /**
     * <code>optional bool geniCodeIsSuccess = 52;</code>
     */
    public boolean getGeniCodeIsSuccess() {
      return geniCodeIsSuccess_;
    }

    public static final int GENICODEISBUSY_FIELD_NUMBER = 53;
    private boolean geniCodeIsBusy_;
    /**
     * <code>optional bool geniCodeIsBusy = 53;</code>
     */
    public boolean hasGeniCodeIsBusy() {
      return ((bitField0_ & 0x80000000) == 0x80000000);
    }
    /**
     * <code>optional bool geniCodeIsBusy = 53;</code>
     */
    public boolean getGeniCodeIsBusy() {
      return geniCodeIsBusy_;
    }

    public static final int GENIRESPONSEOUTPUT_FIELD_NUMBER = 54;
    private java.lang.Object geniResponseOutput_;
    /**
     * <code>optional string geniResponseOutput = 54;</code>
     */
    public boolean hasGeniResponseOutput() {
      return ((bitField1_ & 0x00000001) == 0x00000001);
    }
    /**
     * <code>optional string geniResponseOutput = 54;</code>
     */
    public java.lang.String getGeniResponseOutput() {
      java.lang.Object ref = geniResponseOutput_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          geniResponseOutput_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string geniResponseOutput = 54;</code>
     */
    public com.google.protobuf.ByteString
        getGeniResponseOutputBytes() {
      java.lang.Object ref = geniResponseOutput_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        geniResponseOutput_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int STARTTIME_FIELD_NUMBER = 60;
    private long startTime_;
    /**
     * <code>optional int64 startTime = 60;</code>
     */
    public boolean hasStartTime() {
      return ((bitField1_ & 0x00000002) == 0x00000002);
    }
    /**
     * <code>optional int64 startTime = 60;</code>
     */
    public long getStartTime() {
      return startTime_;
    }

    public static final int STOPTIME_FIELD_NUMBER = 61;
    private long stopTime_;
    /**
     * <code>optional int64 stopTime = 61;</code>
     */
    public boolean hasStopTime() {
      return ((bitField1_ & 0x00000004) == 0x00000004);
    }
    /**
     * <code>optional int64 stopTime = 61;</code>
     */
    public long getStopTime() {
      return stopTime_;
    }

    public static final int RAWVALUE_FIELD_NUMBER = 65;
    private java.lang.Object rawValue_;
    /**
     * <code>optional string rawValue = 65;</code>
     */
    public boolean hasRawValue() {
      return ((bitField1_ & 0x00000008) == 0x00000008);
    }
    /**
     * <code>optional string rawValue = 65;</code>
     */
    public java.lang.String getRawValue() {
      java.lang.Object ref = rawValue_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          rawValue_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string rawValue = 65;</code>
     */
    public com.google.protobuf.ByteString
        getRawValueBytes() {
      java.lang.Object ref = rawValue_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        rawValue_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int PROTOGENISPEWLOGURL_FIELD_NUMBER = 69;
    private java.lang.Object protogeniSpewLogUrl_;
    /**
     * <code>optional string protogeniSpewLogUrl = 69;</code>
     */
    public boolean hasProtogeniSpewLogUrl() {
      return ((bitField1_ & 0x00000010) == 0x00000010);
    }
    /**
     * <code>optional string protogeniSpewLogUrl = 69;</code>
     */
    public java.lang.String getProtogeniSpewLogUrl() {
      java.lang.Object ref = protogeniSpewLogUrl_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          protogeniSpewLogUrl_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string protogeniSpewLogUrl = 69;</code>
     */
    public com.google.protobuf.ByteString
        getProtogeniSpewLogUrlBytes() {
      java.lang.Object ref = protogeniSpewLogUrl_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        protogeniSpewLogUrl_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int EXCEPTIONSTRING_FIELD_NUMBER = 70;
    private java.lang.Object exceptionString_;
    /**
     * <code>optional string exceptionString = 70;</code>
     */
    public boolean hasExceptionString() {
      return ((bitField1_ & 0x00000020) == 0x00000020);
    }
    /**
     * <code>optional string exceptionString = 70;</code>
     */
    public java.lang.String getExceptionString() {
      java.lang.Object ref = exceptionString_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          exceptionString_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string exceptionString = 70;</code>
     */
    public com.google.protobuf.ByteString
        getExceptionStringBytes() {
      java.lang.Object ref = exceptionString_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        exceptionString_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private void initFields() {
      id_ = 0;
      authorityName_ = "";
      authorityUrn_ = "";
      baseServerUrl_ = "";
      callServerUrl_ = "";
      proxyInfo_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance();
      connectionSslAuthUserUrn_ = "";
      connectionSslAuthUserCertificates_ = "";
      connectionId_ = "";
      connectionBasicHttpAuthUsername_ = "";
      connectionAuthenticationMethod_ = "";
      connectionProtocol_ = "";
      connectionType_ = "";
      httpRequestLine_ = "";
      httpRequestHeaders_ = "";
      httpRequest_ = "";
      httpStatusLine_ = "";
      httpResponseHeaders_ = "";
      httpReply_ = "";
      xmlRpcRequestJsonString_ = "";
      xmlRpcReplyJsonString_ = "";
      apiName_ = "";
      javaMethodName_ = "";
      geniMethodName_ = "";
      methodParameters_ = "";
      xmlRpcGeniValue_ = "";
      xmlRpcGeniOutput_ = "";
      xmlRpcGeniCode_ = "";
      geniResponseCode_ = 0;
      geniResponseCodeDescription_ = "";
      geniCodeIsSuccess_ = false;
      geniCodeIsBusy_ = false;
      geniResponseOutput_ = "";
      startTime_ = 0L;
      stopTime_ = 0L;
      rawValue_ = "";
      protogeniSpewLogUrl_ = "";
      exceptionString_ = "";
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      if (!hasId()) {
        memoizedIsInitialized = 0;
        return false;
      }
      if (hasProxyInfo()) {
        if (!getProxyInfo().isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
      }
      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeInt32(1, id_);
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeBytes(2, getAuthorityNameBytes());
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeBytes(3, getAuthorityUrnBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        output.writeBytes(4, getBaseServerUrlBytes());
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        output.writeBytes(5, getCallServerUrlBytes());
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        output.writeMessage(6, proxyInfo_);
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        output.writeBytes(7, getConnectionSslAuthUserUrnBytes());
      }
      if (((bitField0_ & 0x00000080) == 0x00000080)) {
        output.writeBytes(8, getConnectionSslAuthUserCertificatesBytes());
      }
      if (((bitField0_ & 0x00000100) == 0x00000100)) {
        output.writeBytes(9, getConnectionIdBytes());
      }
      if (((bitField0_ & 0x00000200) == 0x00000200)) {
        output.writeBytes(10, getConnectionBasicHttpAuthUsernameBytes());
      }
      if (((bitField0_ & 0x00000400) == 0x00000400)) {
        output.writeBytes(11, getConnectionAuthenticationMethodBytes());
      }
      if (((bitField0_ & 0x00000800) == 0x00000800)) {
        output.writeBytes(12, getConnectionProtocolBytes());
      }
      if (((bitField0_ & 0x00001000) == 0x00001000)) {
        output.writeBytes(13, getConnectionTypeBytes());
      }
      if (((bitField0_ & 0x00002000) == 0x00002000)) {
        output.writeBytes(20, getHttpRequestLineBytes());
      }
      if (((bitField0_ & 0x00004000) == 0x00004000)) {
        output.writeBytes(21, getHttpRequestHeadersBytes());
      }
      if (((bitField0_ & 0x00008000) == 0x00008000)) {
        output.writeBytes(22, getHttpRequestBytes());
      }
      if (((bitField0_ & 0x00010000) == 0x00010000)) {
        output.writeBytes(23, getHttpStatusLineBytes());
      }
      if (((bitField0_ & 0x00020000) == 0x00020000)) {
        output.writeBytes(24, getHttpResponseHeadersBytes());
      }
      if (((bitField0_ & 0x00040000) == 0x00040000)) {
        output.writeBytes(25, getHttpReplyBytes());
      }
      if (((bitField0_ & 0x00080000) == 0x00080000)) {
        output.writeBytes(30, getXmlRpcRequestJsonStringBytes());
      }
      if (((bitField0_ & 0x00100000) == 0x00100000)) {
        output.writeBytes(31, getXmlRpcReplyJsonStringBytes());
      }
      if (((bitField0_ & 0x00200000) == 0x00200000)) {
        output.writeBytes(40, getApiNameBytes());
      }
      if (((bitField0_ & 0x00400000) == 0x00400000)) {
        output.writeBytes(41, getJavaMethodNameBytes());
      }
      if (((bitField0_ & 0x00800000) == 0x00800000)) {
        output.writeBytes(42, getGeniMethodNameBytes());
      }
      if (((bitField0_ & 0x01000000) == 0x01000000)) {
        output.writeBytes(43, getMethodParametersBytes());
      }
      if (((bitField0_ & 0x02000000) == 0x02000000)) {
        output.writeBytes(45, getXmlRpcGeniValueBytes());
      }
      if (((bitField0_ & 0x04000000) == 0x04000000)) {
        output.writeBytes(46, getXmlRpcGeniOutputBytes());
      }
      if (((bitField0_ & 0x08000000) == 0x08000000)) {
        output.writeBytes(47, getXmlRpcGeniCodeBytes());
      }
      if (((bitField0_ & 0x10000000) == 0x10000000)) {
        output.writeInt32(50, geniResponseCode_);
      }
      if (((bitField0_ & 0x20000000) == 0x20000000)) {
        output.writeBytes(51, getGeniResponseCodeDescriptionBytes());
      }
      if (((bitField0_ & 0x40000000) == 0x40000000)) {
        output.writeBool(52, geniCodeIsSuccess_);
      }
      if (((bitField0_ & 0x80000000) == 0x80000000)) {
        output.writeBool(53, geniCodeIsBusy_);
      }
      if (((bitField1_ & 0x00000001) == 0x00000001)) {
        output.writeBytes(54, getGeniResponseOutputBytes());
      }
      if (((bitField1_ & 0x00000002) == 0x00000002)) {
        output.writeInt64(60, startTime_);
      }
      if (((bitField1_ & 0x00000004) == 0x00000004)) {
        output.writeInt64(61, stopTime_);
      }
      if (((bitField1_ & 0x00000008) == 0x00000008)) {
        output.writeBytes(65, getRawValueBytes());
      }
      if (((bitField1_ & 0x00000010) == 0x00000010)) {
        output.writeBytes(69, getProtogeniSpewLogUrlBytes());
      }
      if (((bitField1_ & 0x00000020) == 0x00000020)) {
        output.writeBytes(70, getExceptionStringBytes());
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, id_);
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(2, getAuthorityNameBytes());
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(3, getAuthorityUrnBytes());
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(4, getBaseServerUrlBytes());
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(5, getCallServerUrlBytes());
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, proxyInfo_);
      }
      if (((bitField0_ & 0x00000040) == 0x00000040)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(7, getConnectionSslAuthUserUrnBytes());
      }
      if (((bitField0_ & 0x00000080) == 0x00000080)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(8, getConnectionSslAuthUserCertificatesBytes());
      }
      if (((bitField0_ & 0x00000100) == 0x00000100)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(9, getConnectionIdBytes());
      }
      if (((bitField0_ & 0x00000200) == 0x00000200)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(10, getConnectionBasicHttpAuthUsernameBytes());
      }
      if (((bitField0_ & 0x00000400) == 0x00000400)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(11, getConnectionAuthenticationMethodBytes());
      }
      if (((bitField0_ & 0x00000800) == 0x00000800)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(12, getConnectionProtocolBytes());
      }
      if (((bitField0_ & 0x00001000) == 0x00001000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(13, getConnectionTypeBytes());
      }
      if (((bitField0_ & 0x00002000) == 0x00002000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(20, getHttpRequestLineBytes());
      }
      if (((bitField0_ & 0x00004000) == 0x00004000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(21, getHttpRequestHeadersBytes());
      }
      if (((bitField0_ & 0x00008000) == 0x00008000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(22, getHttpRequestBytes());
      }
      if (((bitField0_ & 0x00010000) == 0x00010000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(23, getHttpStatusLineBytes());
      }
      if (((bitField0_ & 0x00020000) == 0x00020000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(24, getHttpResponseHeadersBytes());
      }
      if (((bitField0_ & 0x00040000) == 0x00040000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(25, getHttpReplyBytes());
      }
      if (((bitField0_ & 0x00080000) == 0x00080000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(30, getXmlRpcRequestJsonStringBytes());
      }
      if (((bitField0_ & 0x00100000) == 0x00100000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(31, getXmlRpcReplyJsonStringBytes());
      }
      if (((bitField0_ & 0x00200000) == 0x00200000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(40, getApiNameBytes());
      }
      if (((bitField0_ & 0x00400000) == 0x00400000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(41, getJavaMethodNameBytes());
      }
      if (((bitField0_ & 0x00800000) == 0x00800000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(42, getGeniMethodNameBytes());
      }
      if (((bitField0_ & 0x01000000) == 0x01000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(43, getMethodParametersBytes());
      }
      if (((bitField0_ & 0x02000000) == 0x02000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(45, getXmlRpcGeniValueBytes());
      }
      if (((bitField0_ & 0x04000000) == 0x04000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(46, getXmlRpcGeniOutputBytes());
      }
      if (((bitField0_ & 0x08000000) == 0x08000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(47, getXmlRpcGeniCodeBytes());
      }
      if (((bitField0_ & 0x10000000) == 0x10000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(50, geniResponseCode_);
      }
      if (((bitField0_ & 0x20000000) == 0x20000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(51, getGeniResponseCodeDescriptionBytes());
      }
      if (((bitField0_ & 0x40000000) == 0x40000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(52, geniCodeIsSuccess_);
      }
      if (((bitField0_ & 0x80000000) == 0x80000000)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(53, geniCodeIsBusy_);
      }
      if (((bitField1_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(54, getGeniResponseOutputBytes());
      }
      if (((bitField1_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(60, startTime_);
      }
      if (((bitField1_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt64Size(61, stopTime_);
      }
      if (((bitField1_ & 0x00000008) == 0x00000008)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(65, getRawValueBytes());
      }
      if (((bitField1_ & 0x00000010) == 0x00000010)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(69, getProtogeniSpewLogUrlBytes());
      }
      if (((bitField1_ & 0x00000020) == 0x00000020)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(70, getExceptionStringBytes());
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code apicalldetails_cache.PBApiCallDetails}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:apicalldetails_cache.PBApiCallDetails)
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetailsOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBApiCallDetails_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBApiCallDetails_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.class, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.Builder.class);
      }

      // Construct using be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getProxyInfoFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        id_ = 0;
        bitField0_ = (bitField0_ & ~0x00000001);
        authorityName_ = "";
        bitField0_ = (bitField0_ & ~0x00000002);
        authorityUrn_ = "";
        bitField0_ = (bitField0_ & ~0x00000004);
        baseServerUrl_ = "";
        bitField0_ = (bitField0_ & ~0x00000008);
        callServerUrl_ = "";
        bitField0_ = (bitField0_ & ~0x00000010);
        if (proxyInfoBuilder_ == null) {
          proxyInfo_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance();
        } else {
          proxyInfoBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000020);
        connectionSslAuthUserUrn_ = "";
        bitField0_ = (bitField0_ & ~0x00000040);
        connectionSslAuthUserCertificates_ = "";
        bitField0_ = (bitField0_ & ~0x00000080);
        connectionId_ = "";
        bitField0_ = (bitField0_ & ~0x00000100);
        connectionBasicHttpAuthUsername_ = "";
        bitField0_ = (bitField0_ & ~0x00000200);
        connectionAuthenticationMethod_ = "";
        bitField0_ = (bitField0_ & ~0x00000400);
        connectionProtocol_ = "";
        bitField0_ = (bitField0_ & ~0x00000800);
        connectionType_ = "";
        bitField0_ = (bitField0_ & ~0x00001000);
        httpRequestLine_ = "";
        bitField0_ = (bitField0_ & ~0x00002000);
        httpRequestHeaders_ = "";
        bitField0_ = (bitField0_ & ~0x00004000);
        httpRequest_ = "";
        bitField0_ = (bitField0_ & ~0x00008000);
        httpStatusLine_ = "";
        bitField0_ = (bitField0_ & ~0x00010000);
        httpResponseHeaders_ = "";
        bitField0_ = (bitField0_ & ~0x00020000);
        httpReply_ = "";
        bitField0_ = (bitField0_ & ~0x00040000);
        xmlRpcRequestJsonString_ = "";
        bitField0_ = (bitField0_ & ~0x00080000);
        xmlRpcReplyJsonString_ = "";
        bitField0_ = (bitField0_ & ~0x00100000);
        apiName_ = "";
        bitField0_ = (bitField0_ & ~0x00200000);
        javaMethodName_ = "";
        bitField0_ = (bitField0_ & ~0x00400000);
        geniMethodName_ = "";
        bitField0_ = (bitField0_ & ~0x00800000);
        methodParameters_ = "";
        bitField0_ = (bitField0_ & ~0x01000000);
        xmlRpcGeniValue_ = "";
        bitField0_ = (bitField0_ & ~0x02000000);
        xmlRpcGeniOutput_ = "";
        bitField0_ = (bitField0_ & ~0x04000000);
        xmlRpcGeniCode_ = "";
        bitField0_ = (bitField0_ & ~0x08000000);
        geniResponseCode_ = 0;
        bitField0_ = (bitField0_ & ~0x10000000);
        geniResponseCodeDescription_ = "";
        bitField0_ = (bitField0_ & ~0x20000000);
        geniCodeIsSuccess_ = false;
        bitField0_ = (bitField0_ & ~0x40000000);
        geniCodeIsBusy_ = false;
        bitField0_ = (bitField0_ & ~0x80000000);
        geniResponseOutput_ = "";
        bitField1_ = (bitField1_ & ~0x00000001);
        startTime_ = 0L;
        bitField1_ = (bitField1_ & ~0x00000002);
        stopTime_ = 0L;
        bitField1_ = (bitField1_ & ~0x00000004);
        rawValue_ = "";
        bitField1_ = (bitField1_ & ~0x00000008);
        protogeniSpewLogUrl_ = "";
        bitField1_ = (bitField1_ & ~0x00000010);
        exceptionString_ = "";
        bitField1_ = (bitField1_ & ~0x00000020);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBApiCallDetails_descriptor;
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails getDefaultInstanceForType() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.getDefaultInstance();
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails build() {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails buildPartial() {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails result = new be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails(this);
        int from_bitField0_ = bitField0_;
        int from_bitField1_ = bitField1_;
        int to_bitField0_ = 0;
        int to_bitField1_ = 0;
        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
          to_bitField0_ |= 0x00000001;
        }
        result.id_ = id_;
        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
          to_bitField0_ |= 0x00000002;
        }
        result.authorityName_ = authorityName_;
        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
          to_bitField0_ |= 0x00000004;
        }
        result.authorityUrn_ = authorityUrn_;
        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
          to_bitField0_ |= 0x00000008;
        }
        result.baseServerUrl_ = baseServerUrl_;
        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
          to_bitField0_ |= 0x00000010;
        }
        result.callServerUrl_ = callServerUrl_;
        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
          to_bitField0_ |= 0x00000020;
        }
        if (proxyInfoBuilder_ == null) {
          result.proxyInfo_ = proxyInfo_;
        } else {
          result.proxyInfo_ = proxyInfoBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
          to_bitField0_ |= 0x00000040;
        }
        result.connectionSslAuthUserUrn_ = connectionSslAuthUserUrn_;
        if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
          to_bitField0_ |= 0x00000080;
        }
        result.connectionSslAuthUserCertificates_ = connectionSslAuthUserCertificates_;
        if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
          to_bitField0_ |= 0x00000100;
        }
        result.connectionId_ = connectionId_;
        if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
          to_bitField0_ |= 0x00000200;
        }
        result.connectionBasicHttpAuthUsername_ = connectionBasicHttpAuthUsername_;
        if (((from_bitField0_ & 0x00000400) == 0x00000400)) {
          to_bitField0_ |= 0x00000400;
        }
        result.connectionAuthenticationMethod_ = connectionAuthenticationMethod_;
        if (((from_bitField0_ & 0x00000800) == 0x00000800)) {
          to_bitField0_ |= 0x00000800;
        }
        result.connectionProtocol_ = connectionProtocol_;
        if (((from_bitField0_ & 0x00001000) == 0x00001000)) {
          to_bitField0_ |= 0x00001000;
        }
        result.connectionType_ = connectionType_;
        if (((from_bitField0_ & 0x00002000) == 0x00002000)) {
          to_bitField0_ |= 0x00002000;
        }
        result.httpRequestLine_ = httpRequestLine_;
        if (((from_bitField0_ & 0x00004000) == 0x00004000)) {
          to_bitField0_ |= 0x00004000;
        }
        result.httpRequestHeaders_ = httpRequestHeaders_;
        if (((from_bitField0_ & 0x00008000) == 0x00008000)) {
          to_bitField0_ |= 0x00008000;
        }
        result.httpRequest_ = httpRequest_;
        if (((from_bitField0_ & 0x00010000) == 0x00010000)) {
          to_bitField0_ |= 0x00010000;
        }
        result.httpStatusLine_ = httpStatusLine_;
        if (((from_bitField0_ & 0x00020000) == 0x00020000)) {
          to_bitField0_ |= 0x00020000;
        }
        result.httpResponseHeaders_ = httpResponseHeaders_;
        if (((from_bitField0_ & 0x00040000) == 0x00040000)) {
          to_bitField0_ |= 0x00040000;
        }
        result.httpReply_ = httpReply_;
        if (((from_bitField0_ & 0x00080000) == 0x00080000)) {
          to_bitField0_ |= 0x00080000;
        }
        result.xmlRpcRequestJsonString_ = xmlRpcRequestJsonString_;
        if (((from_bitField0_ & 0x00100000) == 0x00100000)) {
          to_bitField0_ |= 0x00100000;
        }
        result.xmlRpcReplyJsonString_ = xmlRpcReplyJsonString_;
        if (((from_bitField0_ & 0x00200000) == 0x00200000)) {
          to_bitField0_ |= 0x00200000;
        }
        result.apiName_ = apiName_;
        if (((from_bitField0_ & 0x00400000) == 0x00400000)) {
          to_bitField0_ |= 0x00400000;
        }
        result.javaMethodName_ = javaMethodName_;
        if (((from_bitField0_ & 0x00800000) == 0x00800000)) {
          to_bitField0_ |= 0x00800000;
        }
        result.geniMethodName_ = geniMethodName_;
        if (((from_bitField0_ & 0x01000000) == 0x01000000)) {
          to_bitField0_ |= 0x01000000;
        }
        result.methodParameters_ = methodParameters_;
        if (((from_bitField0_ & 0x02000000) == 0x02000000)) {
          to_bitField0_ |= 0x02000000;
        }
        result.xmlRpcGeniValue_ = xmlRpcGeniValue_;
        if (((from_bitField0_ & 0x04000000) == 0x04000000)) {
          to_bitField0_ |= 0x04000000;
        }
        result.xmlRpcGeniOutput_ = xmlRpcGeniOutput_;
        if (((from_bitField0_ & 0x08000000) == 0x08000000)) {
          to_bitField0_ |= 0x08000000;
        }
        result.xmlRpcGeniCode_ = xmlRpcGeniCode_;
        if (((from_bitField0_ & 0x10000000) == 0x10000000)) {
          to_bitField0_ |= 0x10000000;
        }
        result.geniResponseCode_ = geniResponseCode_;
        if (((from_bitField0_ & 0x20000000) == 0x20000000)) {
          to_bitField0_ |= 0x20000000;
        }
        result.geniResponseCodeDescription_ = geniResponseCodeDescription_;
        if (((from_bitField0_ & 0x40000000) == 0x40000000)) {
          to_bitField0_ |= 0x40000000;
        }
        result.geniCodeIsSuccess_ = geniCodeIsSuccess_;
        if (((from_bitField0_ & 0x80000000) == 0x80000000)) {
          to_bitField0_ |= 0x80000000;
        }
        result.geniCodeIsBusy_ = geniCodeIsBusy_;
        if (((from_bitField1_ & 0x00000001) == 0x00000001)) {
          to_bitField1_ |= 0x00000001;
        }
        result.geniResponseOutput_ = geniResponseOutput_;
        if (((from_bitField1_ & 0x00000002) == 0x00000002)) {
          to_bitField1_ |= 0x00000002;
        }
        result.startTime_ = startTime_;
        if (((from_bitField1_ & 0x00000004) == 0x00000004)) {
          to_bitField1_ |= 0x00000004;
        }
        result.stopTime_ = stopTime_;
        if (((from_bitField1_ & 0x00000008) == 0x00000008)) {
          to_bitField1_ |= 0x00000008;
        }
        result.rawValue_ = rawValue_;
        if (((from_bitField1_ & 0x00000010) == 0x00000010)) {
          to_bitField1_ |= 0x00000010;
        }
        result.protogeniSpewLogUrl_ = protogeniSpewLogUrl_;
        if (((from_bitField1_ & 0x00000020) == 0x00000020)) {
          to_bitField1_ |= 0x00000020;
        }
        result.exceptionString_ = exceptionString_;
        result.bitField0_ = to_bitField0_;
        result.bitField1_ = to_bitField1_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails) {
          return mergeFrom((be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails other) {
        if (other == be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails.getDefaultInstance()) return this;
        if (other.hasId()) {
          setId(other.getId());
        }
        if (other.hasAuthorityName()) {
          bitField0_ |= 0x00000002;
          authorityName_ = other.authorityName_;
          onChanged();
        }
        if (other.hasAuthorityUrn()) {
          bitField0_ |= 0x00000004;
          authorityUrn_ = other.authorityUrn_;
          onChanged();
        }
        if (other.hasBaseServerUrl()) {
          bitField0_ |= 0x00000008;
          baseServerUrl_ = other.baseServerUrl_;
          onChanged();
        }
        if (other.hasCallServerUrl()) {
          bitField0_ |= 0x00000010;
          callServerUrl_ = other.callServerUrl_;
          onChanged();
        }
        if (other.hasProxyInfo()) {
          mergeProxyInfo(other.getProxyInfo());
        }
        if (other.hasConnectionSslAuthUserUrn()) {
          bitField0_ |= 0x00000040;
          connectionSslAuthUserUrn_ = other.connectionSslAuthUserUrn_;
          onChanged();
        }
        if (other.hasConnectionSslAuthUserCertificates()) {
          bitField0_ |= 0x00000080;
          connectionSslAuthUserCertificates_ = other.connectionSslAuthUserCertificates_;
          onChanged();
        }
        if (other.hasConnectionId()) {
          bitField0_ |= 0x00000100;
          connectionId_ = other.connectionId_;
          onChanged();
        }
        if (other.hasConnectionBasicHttpAuthUsername()) {
          bitField0_ |= 0x00000200;
          connectionBasicHttpAuthUsername_ = other.connectionBasicHttpAuthUsername_;
          onChanged();
        }
        if (other.hasConnectionAuthenticationMethod()) {
          bitField0_ |= 0x00000400;
          connectionAuthenticationMethod_ = other.connectionAuthenticationMethod_;
          onChanged();
        }
        if (other.hasConnectionProtocol()) {
          bitField0_ |= 0x00000800;
          connectionProtocol_ = other.connectionProtocol_;
          onChanged();
        }
        if (other.hasConnectionType()) {
          bitField0_ |= 0x00001000;
          connectionType_ = other.connectionType_;
          onChanged();
        }
        if (other.hasHttpRequestLine()) {
          bitField0_ |= 0x00002000;
          httpRequestLine_ = other.httpRequestLine_;
          onChanged();
        }
        if (other.hasHttpRequestHeaders()) {
          bitField0_ |= 0x00004000;
          httpRequestHeaders_ = other.httpRequestHeaders_;
          onChanged();
        }
        if (other.hasHttpRequest()) {
          bitField0_ |= 0x00008000;
          httpRequest_ = other.httpRequest_;
          onChanged();
        }
        if (other.hasHttpStatusLine()) {
          bitField0_ |= 0x00010000;
          httpStatusLine_ = other.httpStatusLine_;
          onChanged();
        }
        if (other.hasHttpResponseHeaders()) {
          bitField0_ |= 0x00020000;
          httpResponseHeaders_ = other.httpResponseHeaders_;
          onChanged();
        }
        if (other.hasHttpReply()) {
          bitField0_ |= 0x00040000;
          httpReply_ = other.httpReply_;
          onChanged();
        }
        if (other.hasXmlRpcRequestJsonString()) {
          bitField0_ |= 0x00080000;
          xmlRpcRequestJsonString_ = other.xmlRpcRequestJsonString_;
          onChanged();
        }
        if (other.hasXmlRpcReplyJsonString()) {
          bitField0_ |= 0x00100000;
          xmlRpcReplyJsonString_ = other.xmlRpcReplyJsonString_;
          onChanged();
        }
        if (other.hasApiName()) {
          bitField0_ |= 0x00200000;
          apiName_ = other.apiName_;
          onChanged();
        }
        if (other.hasJavaMethodName()) {
          bitField0_ |= 0x00400000;
          javaMethodName_ = other.javaMethodName_;
          onChanged();
        }
        if (other.hasGeniMethodName()) {
          bitField0_ |= 0x00800000;
          geniMethodName_ = other.geniMethodName_;
          onChanged();
        }
        if (other.hasMethodParameters()) {
          bitField0_ |= 0x01000000;
          methodParameters_ = other.methodParameters_;
          onChanged();
        }
        if (other.hasXmlRpcGeniValue()) {
          bitField0_ |= 0x02000000;
          xmlRpcGeniValue_ = other.xmlRpcGeniValue_;
          onChanged();
        }
        if (other.hasXmlRpcGeniOutput()) {
          bitField0_ |= 0x04000000;
          xmlRpcGeniOutput_ = other.xmlRpcGeniOutput_;
          onChanged();
        }
        if (other.hasXmlRpcGeniCode()) {
          bitField0_ |= 0x08000000;
          xmlRpcGeniCode_ = other.xmlRpcGeniCode_;
          onChanged();
        }
        if (other.hasGeniResponseCode()) {
          setGeniResponseCode(other.getGeniResponseCode());
        }
        if (other.hasGeniResponseCodeDescription()) {
          bitField0_ |= 0x20000000;
          geniResponseCodeDescription_ = other.geniResponseCodeDescription_;
          onChanged();
        }
        if (other.hasGeniCodeIsSuccess()) {
          setGeniCodeIsSuccess(other.getGeniCodeIsSuccess());
        }
        if (other.hasGeniCodeIsBusy()) {
          setGeniCodeIsBusy(other.getGeniCodeIsBusy());
        }
        if (other.hasGeniResponseOutput()) {
          bitField1_ |= 0x00000001;
          geniResponseOutput_ = other.geniResponseOutput_;
          onChanged();
        }
        if (other.hasStartTime()) {
          setStartTime(other.getStartTime());
        }
        if (other.hasStopTime()) {
          setStopTime(other.getStopTime());
        }
        if (other.hasRawValue()) {
          bitField1_ |= 0x00000008;
          rawValue_ = other.rawValue_;
          onChanged();
        }
        if (other.hasProtogeniSpewLogUrl()) {
          bitField1_ |= 0x00000010;
          protogeniSpewLogUrl_ = other.protogeniSpewLogUrl_;
          onChanged();
        }
        if (other.hasExceptionString()) {
          bitField1_ |= 0x00000020;
          exceptionString_ = other.exceptionString_;
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        if (!hasId()) {
          
          return false;
        }
        if (hasProxyInfo()) {
          if (!getProxyInfo().isInitialized()) {
            
            return false;
          }
        }
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBApiCallDetails) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;
      private int bitField1_;

      private int id_ ;
      /**
       * <code>required int32 id = 1;</code>
       */
      public boolean hasId() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>required int32 id = 1;</code>
       */
      public int getId() {
        return id_;
      }
      /**
       * <code>required int32 id = 1;</code>
       */
      public Builder setId(int value) {
        bitField0_ |= 0x00000001;
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>required int32 id = 1;</code>
       */
      public Builder clearId() {
        bitField0_ = (bitField0_ & ~0x00000001);
        id_ = 0;
        onChanged();
        return this;
      }

      private java.lang.Object authorityName_ = "";
      /**
       * <code>optional string authorityName = 2;</code>
       */
      public boolean hasAuthorityName() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * <code>optional string authorityName = 2;</code>
       */
      public java.lang.String getAuthorityName() {
        java.lang.Object ref = authorityName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            authorityName_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string authorityName = 2;</code>
       */
      public com.google.protobuf.ByteString
          getAuthorityNameBytes() {
        java.lang.Object ref = authorityName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          authorityName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string authorityName = 2;</code>
       */
      public Builder setAuthorityName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        authorityName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string authorityName = 2;</code>
       */
      public Builder clearAuthorityName() {
        bitField0_ = (bitField0_ & ~0x00000002);
        authorityName_ = getDefaultInstance().getAuthorityName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string authorityName = 2;</code>
       */
      public Builder setAuthorityNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        authorityName_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object authorityUrn_ = "";
      /**
       * <code>optional string authorityUrn = 3;</code>
       */
      public boolean hasAuthorityUrn() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * <code>optional string authorityUrn = 3;</code>
       */
      public java.lang.String getAuthorityUrn() {
        java.lang.Object ref = authorityUrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            authorityUrn_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string authorityUrn = 3;</code>
       */
      public com.google.protobuf.ByteString
          getAuthorityUrnBytes() {
        java.lang.Object ref = authorityUrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          authorityUrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string authorityUrn = 3;</code>
       */
      public Builder setAuthorityUrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        authorityUrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string authorityUrn = 3;</code>
       */
      public Builder clearAuthorityUrn() {
        bitField0_ = (bitField0_ & ~0x00000004);
        authorityUrn_ = getDefaultInstance().getAuthorityUrn();
        onChanged();
        return this;
      }
      /**
       * <code>optional string authorityUrn = 3;</code>
       */
      public Builder setAuthorityUrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        authorityUrn_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object baseServerUrl_ = "";
      /**
       * <code>optional string baseServerUrl = 4;</code>
       */
      public boolean hasBaseServerUrl() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * <code>optional string baseServerUrl = 4;</code>
       */
      public java.lang.String getBaseServerUrl() {
        java.lang.Object ref = baseServerUrl_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            baseServerUrl_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string baseServerUrl = 4;</code>
       */
      public com.google.protobuf.ByteString
          getBaseServerUrlBytes() {
        java.lang.Object ref = baseServerUrl_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          baseServerUrl_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string baseServerUrl = 4;</code>
       */
      public Builder setBaseServerUrl(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        baseServerUrl_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string baseServerUrl = 4;</code>
       */
      public Builder clearBaseServerUrl() {
        bitField0_ = (bitField0_ & ~0x00000008);
        baseServerUrl_ = getDefaultInstance().getBaseServerUrl();
        onChanged();
        return this;
      }
      /**
       * <code>optional string baseServerUrl = 4;</code>
       */
      public Builder setBaseServerUrlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        baseServerUrl_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object callServerUrl_ = "";
      /**
       * <code>optional string callServerUrl = 5;</code>
       */
      public boolean hasCallServerUrl() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * <code>optional string callServerUrl = 5;</code>
       */
      public java.lang.String getCallServerUrl() {
        java.lang.Object ref = callServerUrl_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            callServerUrl_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string callServerUrl = 5;</code>
       */
      public com.google.protobuf.ByteString
          getCallServerUrlBytes() {
        java.lang.Object ref = callServerUrl_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          callServerUrl_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string callServerUrl = 5;</code>
       */
      public Builder setCallServerUrl(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        callServerUrl_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string callServerUrl = 5;</code>
       */
      public Builder clearCallServerUrl() {
        bitField0_ = (bitField0_ & ~0x00000010);
        callServerUrl_ = getDefaultInstance().getCallServerUrl();
        onChanged();
        return this;
      }
      /**
       * <code>optional string callServerUrl = 5;</code>
       */
      public Builder setCallServerUrlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        callServerUrl_ = value;
        onChanged();
        return this;
      }

      private be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo proxyInfo_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance();
      private com.google.protobuf.SingleFieldBuilder<
          be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfoOrBuilder> proxyInfoBuilder_;
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public boolean hasProxyInfo() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo getProxyInfo() {
        if (proxyInfoBuilder_ == null) {
          return proxyInfo_;
        } else {
          return proxyInfoBuilder_.getMessage();
        }
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public Builder setProxyInfo(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo value) {
        if (proxyInfoBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          proxyInfo_ = value;
          onChanged();
        } else {
          proxyInfoBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000020;
        return this;
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public Builder setProxyInfo(
          be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder builderForValue) {
        if (proxyInfoBuilder_ == null) {
          proxyInfo_ = builderForValue.build();
          onChanged();
        } else {
          proxyInfoBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000020;
        return this;
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public Builder mergeProxyInfo(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo value) {
        if (proxyInfoBuilder_ == null) {
          if (((bitField0_ & 0x00000020) == 0x00000020) &&
              proxyInfo_ != be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance()) {
            proxyInfo_ =
              be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.newBuilder(proxyInfo_).mergeFrom(value).buildPartial();
          } else {
            proxyInfo_ = value;
          }
          onChanged();
        } else {
          proxyInfoBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000020;
        return this;
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public Builder clearProxyInfo() {
        if (proxyInfoBuilder_ == null) {
          proxyInfo_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance();
          onChanged();
        } else {
          proxyInfoBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000020);
        return this;
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder getProxyInfoBuilder() {
        bitField0_ |= 0x00000020;
        onChanged();
        return getProxyInfoFieldBuilder().getBuilder();
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfoOrBuilder getProxyInfoOrBuilder() {
        if (proxyInfoBuilder_ != null) {
          return proxyInfoBuilder_.getMessageOrBuilder();
        } else {
          return proxyInfo_;
        }
      }
      /**
       * <code>optional .apicalldetails_cache.PBProxyInfo proxyInfo = 6;</code>
       */
      private com.google.protobuf.SingleFieldBuilder<
          be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfoOrBuilder> 
          getProxyInfoFieldBuilder() {
        if (proxyInfoBuilder_ == null) {
          proxyInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                  getProxyInfo(),
                  getParentForChildren(),
                  isClean());
          proxyInfo_ = null;
        }
        return proxyInfoBuilder_;
      }

      private java.lang.Object connectionSslAuthUserUrn_ = "";
      /**
       * <code>optional string connectionSslAuthUserUrn = 7;</code>
       */
      public boolean hasConnectionSslAuthUserUrn() {
        return ((bitField0_ & 0x00000040) == 0x00000040);
      }
      /**
       * <code>optional string connectionSslAuthUserUrn = 7;</code>
       */
      public java.lang.String getConnectionSslAuthUserUrn() {
        java.lang.Object ref = connectionSslAuthUserUrn_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionSslAuthUserUrn_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionSslAuthUserUrn = 7;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionSslAuthUserUrnBytes() {
        java.lang.Object ref = connectionSslAuthUserUrn_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionSslAuthUserUrn_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionSslAuthUserUrn = 7;</code>
       */
      public Builder setConnectionSslAuthUserUrn(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000040;
        connectionSslAuthUserUrn_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionSslAuthUserUrn = 7;</code>
       */
      public Builder clearConnectionSslAuthUserUrn() {
        bitField0_ = (bitField0_ & ~0x00000040);
        connectionSslAuthUserUrn_ = getDefaultInstance().getConnectionSslAuthUserUrn();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionSslAuthUserUrn = 7;</code>
       */
      public Builder setConnectionSslAuthUserUrnBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000040;
        connectionSslAuthUserUrn_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object connectionSslAuthUserCertificates_ = "";
      /**
       * <code>optional string connectionSslAuthUserCertificates = 8;</code>
       */
      public boolean hasConnectionSslAuthUserCertificates() {
        return ((bitField0_ & 0x00000080) == 0x00000080);
      }
      /**
       * <code>optional string connectionSslAuthUserCertificates = 8;</code>
       */
      public java.lang.String getConnectionSslAuthUserCertificates() {
        java.lang.Object ref = connectionSslAuthUserCertificates_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionSslAuthUserCertificates_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionSslAuthUserCertificates = 8;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionSslAuthUserCertificatesBytes() {
        java.lang.Object ref = connectionSslAuthUserCertificates_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionSslAuthUserCertificates_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionSslAuthUserCertificates = 8;</code>
       */
      public Builder setConnectionSslAuthUserCertificates(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        connectionSslAuthUserCertificates_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionSslAuthUserCertificates = 8;</code>
       */
      public Builder clearConnectionSslAuthUserCertificates() {
        bitField0_ = (bitField0_ & ~0x00000080);
        connectionSslAuthUserCertificates_ = getDefaultInstance().getConnectionSslAuthUserCertificates();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionSslAuthUserCertificates = 8;</code>
       */
      public Builder setConnectionSslAuthUserCertificatesBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        connectionSslAuthUserCertificates_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object connectionId_ = "";
      /**
       * <code>optional string connectionId = 9;</code>
       */
      public boolean hasConnectionId() {
        return ((bitField0_ & 0x00000100) == 0x00000100);
      }
      /**
       * <code>optional string connectionId = 9;</code>
       */
      public java.lang.String getConnectionId() {
        java.lang.Object ref = connectionId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionId_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionId = 9;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionIdBytes() {
        java.lang.Object ref = connectionId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionId = 9;</code>
       */
      public Builder setConnectionId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000100;
        connectionId_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionId = 9;</code>
       */
      public Builder clearConnectionId() {
        bitField0_ = (bitField0_ & ~0x00000100);
        connectionId_ = getDefaultInstance().getConnectionId();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionId = 9;</code>
       */
      public Builder setConnectionIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000100;
        connectionId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object connectionBasicHttpAuthUsername_ = "";
      /**
       * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
       */
      public boolean hasConnectionBasicHttpAuthUsername() {
        return ((bitField0_ & 0x00000200) == 0x00000200);
      }
      /**
       * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
       */
      public java.lang.String getConnectionBasicHttpAuthUsername() {
        java.lang.Object ref = connectionBasicHttpAuthUsername_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionBasicHttpAuthUsername_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionBasicHttpAuthUsernameBytes() {
        java.lang.Object ref = connectionBasicHttpAuthUsername_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionBasicHttpAuthUsername_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
       */
      public Builder setConnectionBasicHttpAuthUsername(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        connectionBasicHttpAuthUsername_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
       */
      public Builder clearConnectionBasicHttpAuthUsername() {
        bitField0_ = (bitField0_ & ~0x00000200);
        connectionBasicHttpAuthUsername_ = getDefaultInstance().getConnectionBasicHttpAuthUsername();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionBasicHttpAuthUsername = 10;</code>
       */
      public Builder setConnectionBasicHttpAuthUsernameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        connectionBasicHttpAuthUsername_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object connectionAuthenticationMethod_ = "";
      /**
       * <code>optional string connectionAuthenticationMethod = 11;</code>
       */
      public boolean hasConnectionAuthenticationMethod() {
        return ((bitField0_ & 0x00000400) == 0x00000400);
      }
      /**
       * <code>optional string connectionAuthenticationMethod = 11;</code>
       */
      public java.lang.String getConnectionAuthenticationMethod() {
        java.lang.Object ref = connectionAuthenticationMethod_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionAuthenticationMethod_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionAuthenticationMethod = 11;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionAuthenticationMethodBytes() {
        java.lang.Object ref = connectionAuthenticationMethod_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionAuthenticationMethod_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionAuthenticationMethod = 11;</code>
       */
      public Builder setConnectionAuthenticationMethod(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
        connectionAuthenticationMethod_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionAuthenticationMethod = 11;</code>
       */
      public Builder clearConnectionAuthenticationMethod() {
        bitField0_ = (bitField0_ & ~0x00000400);
        connectionAuthenticationMethod_ = getDefaultInstance().getConnectionAuthenticationMethod();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionAuthenticationMethod = 11;</code>
       */
      public Builder setConnectionAuthenticationMethodBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
        connectionAuthenticationMethod_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object connectionProtocol_ = "";
      /**
       * <code>optional string connectionProtocol = 12;</code>
       */
      public boolean hasConnectionProtocol() {
        return ((bitField0_ & 0x00000800) == 0x00000800);
      }
      /**
       * <code>optional string connectionProtocol = 12;</code>
       */
      public java.lang.String getConnectionProtocol() {
        java.lang.Object ref = connectionProtocol_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionProtocol_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionProtocol = 12;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionProtocolBytes() {
        java.lang.Object ref = connectionProtocol_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionProtocol_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionProtocol = 12;</code>
       */
      public Builder setConnectionProtocol(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000800;
        connectionProtocol_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionProtocol = 12;</code>
       */
      public Builder clearConnectionProtocol() {
        bitField0_ = (bitField0_ & ~0x00000800);
        connectionProtocol_ = getDefaultInstance().getConnectionProtocol();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionProtocol = 12;</code>
       */
      public Builder setConnectionProtocolBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000800;
        connectionProtocol_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object connectionType_ = "";
      /**
       * <code>optional string connectionType = 13;</code>
       */
      public boolean hasConnectionType() {
        return ((bitField0_ & 0x00001000) == 0x00001000);
      }
      /**
       * <code>optional string connectionType = 13;</code>
       */
      public java.lang.String getConnectionType() {
        java.lang.Object ref = connectionType_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            connectionType_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string connectionType = 13;</code>
       */
      public com.google.protobuf.ByteString
          getConnectionTypeBytes() {
        java.lang.Object ref = connectionType_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          connectionType_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string connectionType = 13;</code>
       */
      public Builder setConnectionType(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00001000;
        connectionType_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionType = 13;</code>
       */
      public Builder clearConnectionType() {
        bitField0_ = (bitField0_ & ~0x00001000);
        connectionType_ = getDefaultInstance().getConnectionType();
        onChanged();
        return this;
      }
      /**
       * <code>optional string connectionType = 13;</code>
       */
      public Builder setConnectionTypeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00001000;
        connectionType_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object httpRequestLine_ = "";
      /**
       * <code>optional string httpRequestLine = 20;</code>
       */
      public boolean hasHttpRequestLine() {
        return ((bitField0_ & 0x00002000) == 0x00002000);
      }
      /**
       * <code>optional string httpRequestLine = 20;</code>
       */
      public java.lang.String getHttpRequestLine() {
        java.lang.Object ref = httpRequestLine_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            httpRequestLine_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string httpRequestLine = 20;</code>
       */
      public com.google.protobuf.ByteString
          getHttpRequestLineBytes() {
        java.lang.Object ref = httpRequestLine_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          httpRequestLine_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string httpRequestLine = 20;</code>
       */
      public Builder setHttpRequestLine(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00002000;
        httpRequestLine_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpRequestLine = 20;</code>
       */
      public Builder clearHttpRequestLine() {
        bitField0_ = (bitField0_ & ~0x00002000);
        httpRequestLine_ = getDefaultInstance().getHttpRequestLine();
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpRequestLine = 20;</code>
       */
      public Builder setHttpRequestLineBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00002000;
        httpRequestLine_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object httpRequestHeaders_ = "";
      /**
       * <code>optional string httpRequestHeaders = 21;</code>
       */
      public boolean hasHttpRequestHeaders() {
        return ((bitField0_ & 0x00004000) == 0x00004000);
      }
      /**
       * <code>optional string httpRequestHeaders = 21;</code>
       */
      public java.lang.String getHttpRequestHeaders() {
        java.lang.Object ref = httpRequestHeaders_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            httpRequestHeaders_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string httpRequestHeaders = 21;</code>
       */
      public com.google.protobuf.ByteString
          getHttpRequestHeadersBytes() {
        java.lang.Object ref = httpRequestHeaders_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          httpRequestHeaders_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string httpRequestHeaders = 21;</code>
       */
      public Builder setHttpRequestHeaders(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00004000;
        httpRequestHeaders_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpRequestHeaders = 21;</code>
       */
      public Builder clearHttpRequestHeaders() {
        bitField0_ = (bitField0_ & ~0x00004000);
        httpRequestHeaders_ = getDefaultInstance().getHttpRequestHeaders();
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpRequestHeaders = 21;</code>
       */
      public Builder setHttpRequestHeadersBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00004000;
        httpRequestHeaders_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object httpRequest_ = "";
      /**
       * <code>optional string httpRequest = 22;</code>
       */
      public boolean hasHttpRequest() {
        return ((bitField0_ & 0x00008000) == 0x00008000);
      }
      /**
       * <code>optional string httpRequest = 22;</code>
       */
      public java.lang.String getHttpRequest() {
        java.lang.Object ref = httpRequest_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            httpRequest_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string httpRequest = 22;</code>
       */
      public com.google.protobuf.ByteString
          getHttpRequestBytes() {
        java.lang.Object ref = httpRequest_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          httpRequest_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string httpRequest = 22;</code>
       */
      public Builder setHttpRequest(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00008000;
        httpRequest_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpRequest = 22;</code>
       */
      public Builder clearHttpRequest() {
        bitField0_ = (bitField0_ & ~0x00008000);
        httpRequest_ = getDefaultInstance().getHttpRequest();
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpRequest = 22;</code>
       */
      public Builder setHttpRequestBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00008000;
        httpRequest_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object httpStatusLine_ = "";
      /**
       * <code>optional string httpStatusLine = 23;</code>
       */
      public boolean hasHttpStatusLine() {
        return ((bitField0_ & 0x00010000) == 0x00010000);
      }
      /**
       * <code>optional string httpStatusLine = 23;</code>
       */
      public java.lang.String getHttpStatusLine() {
        java.lang.Object ref = httpStatusLine_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            httpStatusLine_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string httpStatusLine = 23;</code>
       */
      public com.google.protobuf.ByteString
          getHttpStatusLineBytes() {
        java.lang.Object ref = httpStatusLine_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          httpStatusLine_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string httpStatusLine = 23;</code>
       */
      public Builder setHttpStatusLine(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00010000;
        httpStatusLine_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpStatusLine = 23;</code>
       */
      public Builder clearHttpStatusLine() {
        bitField0_ = (bitField0_ & ~0x00010000);
        httpStatusLine_ = getDefaultInstance().getHttpStatusLine();
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpStatusLine = 23;</code>
       */
      public Builder setHttpStatusLineBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00010000;
        httpStatusLine_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object httpResponseHeaders_ = "";
      /**
       * <code>optional string httpResponseHeaders = 24;</code>
       */
      public boolean hasHttpResponseHeaders() {
        return ((bitField0_ & 0x00020000) == 0x00020000);
      }
      /**
       * <code>optional string httpResponseHeaders = 24;</code>
       */
      public java.lang.String getHttpResponseHeaders() {
        java.lang.Object ref = httpResponseHeaders_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            httpResponseHeaders_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string httpResponseHeaders = 24;</code>
       */
      public com.google.protobuf.ByteString
          getHttpResponseHeadersBytes() {
        java.lang.Object ref = httpResponseHeaders_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          httpResponseHeaders_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string httpResponseHeaders = 24;</code>
       */
      public Builder setHttpResponseHeaders(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00020000;
        httpResponseHeaders_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpResponseHeaders = 24;</code>
       */
      public Builder clearHttpResponseHeaders() {
        bitField0_ = (bitField0_ & ~0x00020000);
        httpResponseHeaders_ = getDefaultInstance().getHttpResponseHeaders();
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpResponseHeaders = 24;</code>
       */
      public Builder setHttpResponseHeadersBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00020000;
        httpResponseHeaders_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object httpReply_ = "";
      /**
       * <code>optional string httpReply = 25;</code>
       */
      public boolean hasHttpReply() {
        return ((bitField0_ & 0x00040000) == 0x00040000);
      }
      /**
       * <code>optional string httpReply = 25;</code>
       */
      public java.lang.String getHttpReply() {
        java.lang.Object ref = httpReply_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            httpReply_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string httpReply = 25;</code>
       */
      public com.google.protobuf.ByteString
          getHttpReplyBytes() {
        java.lang.Object ref = httpReply_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          httpReply_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string httpReply = 25;</code>
       */
      public Builder setHttpReply(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00040000;
        httpReply_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpReply = 25;</code>
       */
      public Builder clearHttpReply() {
        bitField0_ = (bitField0_ & ~0x00040000);
        httpReply_ = getDefaultInstance().getHttpReply();
        onChanged();
        return this;
      }
      /**
       * <code>optional string httpReply = 25;</code>
       */
      public Builder setHttpReplyBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00040000;
        httpReply_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object xmlRpcRequestJsonString_ = "";
      /**
       * <code>optional string xmlRpcRequestJsonString = 30;</code>
       */
      public boolean hasXmlRpcRequestJsonString() {
        return ((bitField0_ & 0x00080000) == 0x00080000);
      }
      /**
       * <code>optional string xmlRpcRequestJsonString = 30;</code>
       */
      public java.lang.String getXmlRpcRequestJsonString() {
        java.lang.Object ref = xmlRpcRequestJsonString_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            xmlRpcRequestJsonString_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string xmlRpcRequestJsonString = 30;</code>
       */
      public com.google.protobuf.ByteString
          getXmlRpcRequestJsonStringBytes() {
        java.lang.Object ref = xmlRpcRequestJsonString_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          xmlRpcRequestJsonString_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string xmlRpcRequestJsonString = 30;</code>
       */
      public Builder setXmlRpcRequestJsonString(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00080000;
        xmlRpcRequestJsonString_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcRequestJsonString = 30;</code>
       */
      public Builder clearXmlRpcRequestJsonString() {
        bitField0_ = (bitField0_ & ~0x00080000);
        xmlRpcRequestJsonString_ = getDefaultInstance().getXmlRpcRequestJsonString();
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcRequestJsonString = 30;</code>
       */
      public Builder setXmlRpcRequestJsonStringBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00080000;
        xmlRpcRequestJsonString_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object xmlRpcReplyJsonString_ = "";
      /**
       * <code>optional string xmlRpcReplyJsonString = 31;</code>
       */
      public boolean hasXmlRpcReplyJsonString() {
        return ((bitField0_ & 0x00100000) == 0x00100000);
      }
      /**
       * <code>optional string xmlRpcReplyJsonString = 31;</code>
       */
      public java.lang.String getXmlRpcReplyJsonString() {
        java.lang.Object ref = xmlRpcReplyJsonString_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            xmlRpcReplyJsonString_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string xmlRpcReplyJsonString = 31;</code>
       */
      public com.google.protobuf.ByteString
          getXmlRpcReplyJsonStringBytes() {
        java.lang.Object ref = xmlRpcReplyJsonString_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          xmlRpcReplyJsonString_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string xmlRpcReplyJsonString = 31;</code>
       */
      public Builder setXmlRpcReplyJsonString(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00100000;
        xmlRpcReplyJsonString_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcReplyJsonString = 31;</code>
       */
      public Builder clearXmlRpcReplyJsonString() {
        bitField0_ = (bitField0_ & ~0x00100000);
        xmlRpcReplyJsonString_ = getDefaultInstance().getXmlRpcReplyJsonString();
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcReplyJsonString = 31;</code>
       */
      public Builder setXmlRpcReplyJsonStringBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00100000;
        xmlRpcReplyJsonString_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object apiName_ = "";
      /**
       * <code>optional string apiName = 40;</code>
       */
      public boolean hasApiName() {
        return ((bitField0_ & 0x00200000) == 0x00200000);
      }
      /**
       * <code>optional string apiName = 40;</code>
       */
      public java.lang.String getApiName() {
        java.lang.Object ref = apiName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            apiName_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string apiName = 40;</code>
       */
      public com.google.protobuf.ByteString
          getApiNameBytes() {
        java.lang.Object ref = apiName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          apiName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string apiName = 40;</code>
       */
      public Builder setApiName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00200000;
        apiName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string apiName = 40;</code>
       */
      public Builder clearApiName() {
        bitField0_ = (bitField0_ & ~0x00200000);
        apiName_ = getDefaultInstance().getApiName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string apiName = 40;</code>
       */
      public Builder setApiNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00200000;
        apiName_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object javaMethodName_ = "";
      /**
       * <code>optional string javaMethodName = 41;</code>
       */
      public boolean hasJavaMethodName() {
        return ((bitField0_ & 0x00400000) == 0x00400000);
      }
      /**
       * <code>optional string javaMethodName = 41;</code>
       */
      public java.lang.String getJavaMethodName() {
        java.lang.Object ref = javaMethodName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            javaMethodName_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string javaMethodName = 41;</code>
       */
      public com.google.protobuf.ByteString
          getJavaMethodNameBytes() {
        java.lang.Object ref = javaMethodName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          javaMethodName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string javaMethodName = 41;</code>
       */
      public Builder setJavaMethodName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00400000;
        javaMethodName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string javaMethodName = 41;</code>
       */
      public Builder clearJavaMethodName() {
        bitField0_ = (bitField0_ & ~0x00400000);
        javaMethodName_ = getDefaultInstance().getJavaMethodName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string javaMethodName = 41;</code>
       */
      public Builder setJavaMethodNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00400000;
        javaMethodName_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object geniMethodName_ = "";
      /**
       * <code>optional string geniMethodName = 42;</code>
       */
      public boolean hasGeniMethodName() {
        return ((bitField0_ & 0x00800000) == 0x00800000);
      }
      /**
       * <code>optional string geniMethodName = 42;</code>
       */
      public java.lang.String getGeniMethodName() {
        java.lang.Object ref = geniMethodName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            geniMethodName_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string geniMethodName = 42;</code>
       */
      public com.google.protobuf.ByteString
          getGeniMethodNameBytes() {
        java.lang.Object ref = geniMethodName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          geniMethodName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string geniMethodName = 42;</code>
       */
      public Builder setGeniMethodName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00800000;
        geniMethodName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string geniMethodName = 42;</code>
       */
      public Builder clearGeniMethodName() {
        bitField0_ = (bitField0_ & ~0x00800000);
        geniMethodName_ = getDefaultInstance().getGeniMethodName();
        onChanged();
        return this;
      }
      /**
       * <code>optional string geniMethodName = 42;</code>
       */
      public Builder setGeniMethodNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00800000;
        geniMethodName_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object methodParameters_ = "";
      /**
       * <code>optional string methodParameters = 43;</code>
       */
      public boolean hasMethodParameters() {
        return ((bitField0_ & 0x01000000) == 0x01000000);
      }
      /**
       * <code>optional string methodParameters = 43;</code>
       */
      public java.lang.String getMethodParameters() {
        java.lang.Object ref = methodParameters_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            methodParameters_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string methodParameters = 43;</code>
       */
      public com.google.protobuf.ByteString
          getMethodParametersBytes() {
        java.lang.Object ref = methodParameters_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          methodParameters_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string methodParameters = 43;</code>
       */
      public Builder setMethodParameters(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x01000000;
        methodParameters_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string methodParameters = 43;</code>
       */
      public Builder clearMethodParameters() {
        bitField0_ = (bitField0_ & ~0x01000000);
        methodParameters_ = getDefaultInstance().getMethodParameters();
        onChanged();
        return this;
      }
      /**
       * <code>optional string methodParameters = 43;</code>
       */
      public Builder setMethodParametersBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x01000000;
        methodParameters_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object xmlRpcGeniValue_ = "";
      /**
       * <code>optional string xmlRpcGeniValue = 45;</code>
       */
      public boolean hasXmlRpcGeniValue() {
        return ((bitField0_ & 0x02000000) == 0x02000000);
      }
      /**
       * <code>optional string xmlRpcGeniValue = 45;</code>
       */
      public java.lang.String getXmlRpcGeniValue() {
        java.lang.Object ref = xmlRpcGeniValue_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            xmlRpcGeniValue_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string xmlRpcGeniValue = 45;</code>
       */
      public com.google.protobuf.ByteString
          getXmlRpcGeniValueBytes() {
        java.lang.Object ref = xmlRpcGeniValue_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          xmlRpcGeniValue_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string xmlRpcGeniValue = 45;</code>
       */
      public Builder setXmlRpcGeniValue(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x02000000;
        xmlRpcGeniValue_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcGeniValue = 45;</code>
       */
      public Builder clearXmlRpcGeniValue() {
        bitField0_ = (bitField0_ & ~0x02000000);
        xmlRpcGeniValue_ = getDefaultInstance().getXmlRpcGeniValue();
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcGeniValue = 45;</code>
       */
      public Builder setXmlRpcGeniValueBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x02000000;
        xmlRpcGeniValue_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object xmlRpcGeniOutput_ = "";
      /**
       * <code>optional string xmlRpcGeniOutput = 46;</code>
       */
      public boolean hasXmlRpcGeniOutput() {
        return ((bitField0_ & 0x04000000) == 0x04000000);
      }
      /**
       * <code>optional string xmlRpcGeniOutput = 46;</code>
       */
      public java.lang.String getXmlRpcGeniOutput() {
        java.lang.Object ref = xmlRpcGeniOutput_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            xmlRpcGeniOutput_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string xmlRpcGeniOutput = 46;</code>
       */
      public com.google.protobuf.ByteString
          getXmlRpcGeniOutputBytes() {
        java.lang.Object ref = xmlRpcGeniOutput_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          xmlRpcGeniOutput_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string xmlRpcGeniOutput = 46;</code>
       */
      public Builder setXmlRpcGeniOutput(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x04000000;
        xmlRpcGeniOutput_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcGeniOutput = 46;</code>
       */
      public Builder clearXmlRpcGeniOutput() {
        bitField0_ = (bitField0_ & ~0x04000000);
        xmlRpcGeniOutput_ = getDefaultInstance().getXmlRpcGeniOutput();
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcGeniOutput = 46;</code>
       */
      public Builder setXmlRpcGeniOutputBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x04000000;
        xmlRpcGeniOutput_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object xmlRpcGeniCode_ = "";
      /**
       * <code>optional string xmlRpcGeniCode = 47;</code>
       */
      public boolean hasXmlRpcGeniCode() {
        return ((bitField0_ & 0x08000000) == 0x08000000);
      }
      /**
       * <code>optional string xmlRpcGeniCode = 47;</code>
       */
      public java.lang.String getXmlRpcGeniCode() {
        java.lang.Object ref = xmlRpcGeniCode_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            xmlRpcGeniCode_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string xmlRpcGeniCode = 47;</code>
       */
      public com.google.protobuf.ByteString
          getXmlRpcGeniCodeBytes() {
        java.lang.Object ref = xmlRpcGeniCode_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          xmlRpcGeniCode_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string xmlRpcGeniCode = 47;</code>
       */
      public Builder setXmlRpcGeniCode(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x08000000;
        xmlRpcGeniCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcGeniCode = 47;</code>
       */
      public Builder clearXmlRpcGeniCode() {
        bitField0_ = (bitField0_ & ~0x08000000);
        xmlRpcGeniCode_ = getDefaultInstance().getXmlRpcGeniCode();
        onChanged();
        return this;
      }
      /**
       * <code>optional string xmlRpcGeniCode = 47;</code>
       */
      public Builder setXmlRpcGeniCodeBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x08000000;
        xmlRpcGeniCode_ = value;
        onChanged();
        return this;
      }

      private int geniResponseCode_ ;
      /**
       * <code>optional int32 geniResponseCode = 50;</code>
       *
       * <pre>
       *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
       * </pre>
       */
      public boolean hasGeniResponseCode() {
        return ((bitField0_ & 0x10000000) == 0x10000000);
      }
      /**
       * <code>optional int32 geniResponseCode = 50;</code>
       *
       * <pre>
       *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
       * </pre>
       */
      public int getGeniResponseCode() {
        return geniResponseCode_;
      }
      /**
       * <code>optional int32 geniResponseCode = 50;</code>
       *
       * <pre>
       *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
       * </pre>
       */
      public Builder setGeniResponseCode(int value) {
        bitField0_ |= 0x10000000;
        geniResponseCode_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 geniResponseCode = 50;</code>
       *
       * <pre>
       *These are in reply, but stored separately to help to and from XML (which can't reconstruct reply)
       * </pre>
       */
      public Builder clearGeniResponseCode() {
        bitField0_ = (bitField0_ & ~0x10000000);
        geniResponseCode_ = 0;
        onChanged();
        return this;
      }

      private java.lang.Object geniResponseCodeDescription_ = "";
      /**
       * <code>optional string geniResponseCodeDescription = 51;</code>
       */
      public boolean hasGeniResponseCodeDescription() {
        return ((bitField0_ & 0x20000000) == 0x20000000);
      }
      /**
       * <code>optional string geniResponseCodeDescription = 51;</code>
       */
      public java.lang.String getGeniResponseCodeDescription() {
        java.lang.Object ref = geniResponseCodeDescription_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            geniResponseCodeDescription_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string geniResponseCodeDescription = 51;</code>
       */
      public com.google.protobuf.ByteString
          getGeniResponseCodeDescriptionBytes() {
        java.lang.Object ref = geniResponseCodeDescription_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          geniResponseCodeDescription_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string geniResponseCodeDescription = 51;</code>
       */
      public Builder setGeniResponseCodeDescription(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x20000000;
        geniResponseCodeDescription_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string geniResponseCodeDescription = 51;</code>
       */
      public Builder clearGeniResponseCodeDescription() {
        bitField0_ = (bitField0_ & ~0x20000000);
        geniResponseCodeDescription_ = getDefaultInstance().getGeniResponseCodeDescription();
        onChanged();
        return this;
      }
      /**
       * <code>optional string geniResponseCodeDescription = 51;</code>
       */
      public Builder setGeniResponseCodeDescriptionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x20000000;
        geniResponseCodeDescription_ = value;
        onChanged();
        return this;
      }

      private boolean geniCodeIsSuccess_ ;
      /**
       * <code>optional bool geniCodeIsSuccess = 52;</code>
       */
      public boolean hasGeniCodeIsSuccess() {
        return ((bitField0_ & 0x40000000) == 0x40000000);
      }
      /**
       * <code>optional bool geniCodeIsSuccess = 52;</code>
       */
      public boolean getGeniCodeIsSuccess() {
        return geniCodeIsSuccess_;
      }
      /**
       * <code>optional bool geniCodeIsSuccess = 52;</code>
       */
      public Builder setGeniCodeIsSuccess(boolean value) {
        bitField0_ |= 0x40000000;
        geniCodeIsSuccess_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool geniCodeIsSuccess = 52;</code>
       */
      public Builder clearGeniCodeIsSuccess() {
        bitField0_ = (bitField0_ & ~0x40000000);
        geniCodeIsSuccess_ = false;
        onChanged();
        return this;
      }

      private boolean geniCodeIsBusy_ ;
      /**
       * <code>optional bool geniCodeIsBusy = 53;</code>
       */
      public boolean hasGeniCodeIsBusy() {
        return ((bitField0_ & 0x80000000) == 0x80000000);
      }
      /**
       * <code>optional bool geniCodeIsBusy = 53;</code>
       */
      public boolean getGeniCodeIsBusy() {
        return geniCodeIsBusy_;
      }
      /**
       * <code>optional bool geniCodeIsBusy = 53;</code>
       */
      public Builder setGeniCodeIsBusy(boolean value) {
        bitField0_ |= 0x80000000;
        geniCodeIsBusy_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool geniCodeIsBusy = 53;</code>
       */
      public Builder clearGeniCodeIsBusy() {
        bitField0_ = (bitField0_ & ~0x80000000);
        geniCodeIsBusy_ = false;
        onChanged();
        return this;
      }

      private java.lang.Object geniResponseOutput_ = "";
      /**
       * <code>optional string geniResponseOutput = 54;</code>
       */
      public boolean hasGeniResponseOutput() {
        return ((bitField1_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>optional string geniResponseOutput = 54;</code>
       */
      public java.lang.String getGeniResponseOutput() {
        java.lang.Object ref = geniResponseOutput_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            geniResponseOutput_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string geniResponseOutput = 54;</code>
       */
      public com.google.protobuf.ByteString
          getGeniResponseOutputBytes() {
        java.lang.Object ref = geniResponseOutput_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          geniResponseOutput_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string geniResponseOutput = 54;</code>
       */
      public Builder setGeniResponseOutput(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000001;
        geniResponseOutput_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string geniResponseOutput = 54;</code>
       */
      public Builder clearGeniResponseOutput() {
        bitField1_ = (bitField1_ & ~0x00000001);
        geniResponseOutput_ = getDefaultInstance().getGeniResponseOutput();
        onChanged();
        return this;
      }
      /**
       * <code>optional string geniResponseOutput = 54;</code>
       */
      public Builder setGeniResponseOutputBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000001;
        geniResponseOutput_ = value;
        onChanged();
        return this;
      }

      private long startTime_ ;
      /**
       * <code>optional int64 startTime = 60;</code>
       */
      public boolean hasStartTime() {
        return ((bitField1_ & 0x00000002) == 0x00000002);
      }
      /**
       * <code>optional int64 startTime = 60;</code>
       */
      public long getStartTime() {
        return startTime_;
      }
      /**
       * <code>optional int64 startTime = 60;</code>
       */
      public Builder setStartTime(long value) {
        bitField1_ |= 0x00000002;
        startTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int64 startTime = 60;</code>
       */
      public Builder clearStartTime() {
        bitField1_ = (bitField1_ & ~0x00000002);
        startTime_ = 0L;
        onChanged();
        return this;
      }

      private long stopTime_ ;
      /**
       * <code>optional int64 stopTime = 61;</code>
       */
      public boolean hasStopTime() {
        return ((bitField1_ & 0x00000004) == 0x00000004);
      }
      /**
       * <code>optional int64 stopTime = 61;</code>
       */
      public long getStopTime() {
        return stopTime_;
      }
      /**
       * <code>optional int64 stopTime = 61;</code>
       */
      public Builder setStopTime(long value) {
        bitField1_ |= 0x00000004;
        stopTime_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int64 stopTime = 61;</code>
       */
      public Builder clearStopTime() {
        bitField1_ = (bitField1_ & ~0x00000004);
        stopTime_ = 0L;
        onChanged();
        return this;
      }

      private java.lang.Object rawValue_ = "";
      /**
       * <code>optional string rawValue = 65;</code>
       */
      public boolean hasRawValue() {
        return ((bitField1_ & 0x00000008) == 0x00000008);
      }
      /**
       * <code>optional string rawValue = 65;</code>
       */
      public java.lang.String getRawValue() {
        java.lang.Object ref = rawValue_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            rawValue_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string rawValue = 65;</code>
       */
      public com.google.protobuf.ByteString
          getRawValueBytes() {
        java.lang.Object ref = rawValue_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          rawValue_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string rawValue = 65;</code>
       */
      public Builder setRawValue(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000008;
        rawValue_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string rawValue = 65;</code>
       */
      public Builder clearRawValue() {
        bitField1_ = (bitField1_ & ~0x00000008);
        rawValue_ = getDefaultInstance().getRawValue();
        onChanged();
        return this;
      }
      /**
       * <code>optional string rawValue = 65;</code>
       */
      public Builder setRawValueBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000008;
        rawValue_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object protogeniSpewLogUrl_ = "";
      /**
       * <code>optional string protogeniSpewLogUrl = 69;</code>
       */
      public boolean hasProtogeniSpewLogUrl() {
        return ((bitField1_ & 0x00000010) == 0x00000010);
      }
      /**
       * <code>optional string protogeniSpewLogUrl = 69;</code>
       */
      public java.lang.String getProtogeniSpewLogUrl() {
        java.lang.Object ref = protogeniSpewLogUrl_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            protogeniSpewLogUrl_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string protogeniSpewLogUrl = 69;</code>
       */
      public com.google.protobuf.ByteString
          getProtogeniSpewLogUrlBytes() {
        java.lang.Object ref = protogeniSpewLogUrl_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          protogeniSpewLogUrl_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string protogeniSpewLogUrl = 69;</code>
       */
      public Builder setProtogeniSpewLogUrl(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000010;
        protogeniSpewLogUrl_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string protogeniSpewLogUrl = 69;</code>
       */
      public Builder clearProtogeniSpewLogUrl() {
        bitField1_ = (bitField1_ & ~0x00000010);
        protogeniSpewLogUrl_ = getDefaultInstance().getProtogeniSpewLogUrl();
        onChanged();
        return this;
      }
      /**
       * <code>optional string protogeniSpewLogUrl = 69;</code>
       */
      public Builder setProtogeniSpewLogUrlBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000010;
        protogeniSpewLogUrl_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object exceptionString_ = "";
      /**
       * <code>optional string exceptionString = 70;</code>
       */
      public boolean hasExceptionString() {
        return ((bitField1_ & 0x00000020) == 0x00000020);
      }
      /**
       * <code>optional string exceptionString = 70;</code>
       */
      public java.lang.String getExceptionString() {
        java.lang.Object ref = exceptionString_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            exceptionString_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string exceptionString = 70;</code>
       */
      public com.google.protobuf.ByteString
          getExceptionStringBytes() {
        java.lang.Object ref = exceptionString_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          exceptionString_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string exceptionString = 70;</code>
       */
      public Builder setExceptionString(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000020;
        exceptionString_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string exceptionString = 70;</code>
       */
      public Builder clearExceptionString() {
        bitField1_ = (bitField1_ & ~0x00000020);
        exceptionString_ = getDefaultInstance().getExceptionString();
        onChanged();
        return this;
      }
      /**
       * <code>optional string exceptionString = 70;</code>
       */
      public Builder setExceptionStringBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField1_ |= 0x00000020;
        exceptionString_ = value;
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:apicalldetails_cache.PBApiCallDetails)
    }

    static {
      defaultInstance = new PBApiCallDetails(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:apicalldetails_cache.PBApiCallDetails)
  }

  public interface PBProxyInfoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:apicalldetails_cache.PBProxyInfo)
      com.google.protobuf.GeneratedMessage.
          ExtendableMessageOrBuilder<PBProxyInfo> {

    /**
     * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
     */
    boolean hasType();
    /**
     * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
     */
    be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type getType();

    /**
     * <code>required string hostname = 2;</code>
     */
    boolean hasHostname();
    /**
     * <code>required string hostname = 2;</code>
     */
    java.lang.String getHostname();
    /**
     * <code>required string hostname = 2;</code>
     */
    com.google.protobuf.ByteString
        getHostnameBytes();

    /**
     * <code>required int32 port = 3;</code>
     */
    boolean hasPort();
    /**
     * <code>required int32 port = 3;</code>
     */
    int getPort();
  }
  /**
   * Protobuf type {@code apicalldetails_cache.PBProxyInfo}
   */
  public static final class PBProxyInfo extends
      com.google.protobuf.GeneratedMessage.ExtendableMessage<
        PBProxyInfo> implements
      // @@protoc_insertion_point(message_implements:apicalldetails_cache.PBProxyInfo)
      PBProxyInfoOrBuilder {
    // Use PBProxyInfo.newBuilder() to construct.
    private PBProxyInfo(com.google.protobuf.GeneratedMessage.ExtendableBuilder<be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo, ?> builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private PBProxyInfo(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final PBProxyInfo defaultInstance;
    public static PBProxyInfo getDefaultInstance() {
      return defaultInstance;
    }

    public PBProxyInfo getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private PBProxyInfo(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      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 (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 8: {
              int rawValue = input.readEnum();
              be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type value = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type.valueOf(rawValue);
              if (value == null) {
                unknownFields.mergeVarintField(1, rawValue);
              } else {
                bitField0_ |= 0x00000001;
                type_ = value;
              }
              break;
            }
            case 18: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000002;
              hostname_ = bs;
              break;
            }
            case 24: {
              bitField0_ |= 0x00000004;
              port_ = input.readInt32();
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBProxyInfo_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBProxyInfo_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.class, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder.class);
    }

    public static com.google.protobuf.Parser<PBProxyInfo> PARSER =
        new com.google.protobuf.AbstractParser<PBProxyInfo>() {
      public PBProxyInfo parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new PBProxyInfo(input, extensionRegistry);
      }
    };

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

    /**
     * Protobuf enum {@code apicalldetails_cache.PBProxyInfo.Type}
     */
    public enum Type
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>Base = 1;</code>
       */
      Base(0, 1),
      /**
       * <code>SSH = 2;</code>
       */
      SSH(1, 2),
      ;

      /**
       * <code>Base = 1;</code>
       */
      public static final int Base_VALUE = 1;
      /**
       * <code>SSH = 2;</code>
       */
      public static final int SSH_VALUE = 2;


      public final int getNumber() { return value; }

      public static Type valueOf(int value) {
        switch (value) {
          case 1: return Base;
          case 2: return SSH;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap<Type>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static com.google.protobuf.Internal.EnumLiteMap<Type>
          internalValueMap =
              Type::valueOf;

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(index);
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDescriptor().getEnumTypes().get(0);
      }

      private static final Type[] VALUES = values();

      public static Type valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }

      private final int index;
      private final int value;

      private Type(int index, int value) {
        this.index = index;
        this.value = value;
      }

      // @@protoc_insertion_point(enum_scope:apicalldetails_cache.PBProxyInfo.Type)
    }

    private int bitField0_;
    public static final int TYPE_FIELD_NUMBER = 1;
    private be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type type_;
    /**
     * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
     */
    public boolean hasType() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
     */
    public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type getType() {
      return type_;
    }

    public static final int HOSTNAME_FIELD_NUMBER = 2;
    private java.lang.Object hostname_;
    /**
     * <code>required string hostname = 2;</code>
     */
    public boolean hasHostname() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * <code>required string hostname = 2;</code>
     */
    public java.lang.String getHostname() {
      java.lang.Object ref = hostname_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          hostname_ = s;
        }
        return s;
      }
    }
    /**
     * <code>required string hostname = 2;</code>
     */
    public com.google.protobuf.ByteString
        getHostnameBytes() {
      java.lang.Object ref = hostname_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        hostname_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int PORT_FIELD_NUMBER = 3;
    private int port_;
    /**
     * <code>required int32 port = 3;</code>
     */
    public boolean hasPort() {
      return ((bitField0_ & 0x00000004) == 0x00000004);
    }
    /**
     * <code>required int32 port = 3;</code>
     */
    public int getPort() {
      return port_;
    }

    private void initFields() {
      type_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type.Base;
      hostname_ = "";
      port_ = 0;
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      if (!hasType()) {
        memoizedIsInitialized = 0;
        return false;
      }
      if (!hasHostname()) {
        memoizedIsInitialized = 0;
        return false;
      }
      if (!hasPort()) {
        memoizedIsInitialized = 0;
        return false;
      }
      if (!extensionsAreInitialized()) {
        memoizedIsInitialized = 0;
        return false;
      }
      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      com.google.protobuf.GeneratedMessage
        .ExtendableMessage<be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo>.ExtensionWriter extensionWriter =
          newExtensionWriter();
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeEnum(1, type_.getNumber());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeBytes(2, getHostnameBytes());
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeInt32(3, port_);
      }
      extensionWriter.writeUntil(536870912, output);
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(1, type_.getNumber());
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(2, getHostnameBytes());
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(3, port_);
      }
      size += extensionsSerializedSize();
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code apicalldetails_cache.PBProxyInfo}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.ExtendableBuilder<
          be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo, Builder> implements
        // @@protoc_insertion_point(builder_implements:apicalldetails_cache.PBProxyInfo)
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfoOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBProxyInfo_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBProxyInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.class, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Builder.class);
      }

      // Construct using be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        type_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type.Base;
        bitField0_ = (bitField0_ & ~0x00000001);
        hostname_ = "";
        bitField0_ = (bitField0_ & ~0x00000002);
        port_ = 0;
        bitField0_ = (bitField0_ & ~0x00000004);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBProxyInfo_descriptor;
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo getDefaultInstanceForType() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance();
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo build() {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo buildPartial() {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo result = new be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
          to_bitField0_ |= 0x00000001;
        }
        result.type_ = type_;
        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
          to_bitField0_ |= 0x00000002;
        }
        result.hostname_ = hostname_;
        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
          to_bitField0_ |= 0x00000004;
        }
        result.port_ = port_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo) {
          return mergeFrom((be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo other) {
        if (other == be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.getDefaultInstance()) return this;
        if (other.hasType()) {
          setType(other.getType());
        }
        if (other.hasHostname()) {
          bitField0_ |= 0x00000002;
          hostname_ = other.hostname_;
          onChanged();
        }
        if (other.hasPort()) {
          setPort(other.getPort());
        }
        this.mergeExtensionFields(other);
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        if (!hasType()) {
          
          return false;
        }
        if (!hasHostname()) {
          
          return false;
        }
        if (!hasPort()) {
          
          return false;
        }
        if (!extensionsAreInitialized()) {
          
          return false;
        }
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type type_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type.Base;
      /**
       * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
       */
      public boolean hasType() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
       */
      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type getType() {
        return type_;
      }
      /**
       * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
       */
      public Builder setType(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type value) {
        if (value == null) {
          throw new NullPointerException();
        }
        bitField0_ |= 0x00000001;
        type_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>required .apicalldetails_cache.PBProxyInfo.Type type = 1;</code>
       */
      public Builder clearType() {
        bitField0_ = (bitField0_ & ~0x00000001);
        type_ = be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo.Type.Base;
        onChanged();
        return this;
      }

      private java.lang.Object hostname_ = "";
      /**
       * <code>required string hostname = 2;</code>
       */
      public boolean hasHostname() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * <code>required string hostname = 2;</code>
       */
      public java.lang.String getHostname() {
        java.lang.Object ref = hostname_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            hostname_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>required string hostname = 2;</code>
       */
      public com.google.protobuf.ByteString
          getHostnameBytes() {
        java.lang.Object ref = hostname_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          hostname_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>required string hostname = 2;</code>
       */
      public Builder setHostname(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        hostname_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>required string hostname = 2;</code>
       */
      public Builder clearHostname() {
        bitField0_ = (bitField0_ & ~0x00000002);
        hostname_ = getDefaultInstance().getHostname();
        onChanged();
        return this;
      }
      /**
       * <code>required string hostname = 2;</code>
       */
      public Builder setHostnameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        hostname_ = value;
        onChanged();
        return this;
      }

      private int port_ ;
      /**
       * <code>required int32 port = 3;</code>
       */
      public boolean hasPort() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * <code>required int32 port = 3;</code>
       */
      public int getPort() {
        return port_;
      }
      /**
       * <code>required int32 port = 3;</code>
       */
      public Builder setPort(int value) {
        bitField0_ |= 0x00000004;
        port_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>required int32 port = 3;</code>
       */
      public Builder clearPort() {
        bitField0_ = (bitField0_ & ~0x00000004);
        port_ = 0;
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:apicalldetails_cache.PBProxyInfo)
    }

    static {
      defaultInstance = new PBProxyInfo(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:apicalldetails_cache.PBProxyInfo)
  }

  public interface PBSshProxyInfoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:apicalldetails_cache.PBSshProxyInfo)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * Protobuf type {@code apicalldetails_cache.PBSshProxyInfo}
   */
  public static final class PBSshProxyInfo extends
      com.google.protobuf.GeneratedMessage implements
      // @@protoc_insertion_point(message_implements:apicalldetails_cache.PBSshProxyInfo)
      PBSshProxyInfoOrBuilder {
    // Use PBSshProxyInfo.newBuilder() to construct.
    private PBSshProxyInfo(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private PBSshProxyInfo(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final PBSshProxyInfo defaultInstance;
    public static PBSshProxyInfo getDefaultInstance() {
      return defaultInstance;
    }

    public PBSshProxyInfo getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private PBSshProxyInfo(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      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 (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBSshProxyInfo_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBSshProxyInfo_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.class, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.Builder.class);
    }

    public static com.google.protobuf.Parser<PBSshProxyInfo> PARSER =
        new com.google.protobuf.AbstractParser<PBSshProxyInfo>() {
      public PBSshProxyInfo parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new PBSshProxyInfo(input, extensionRegistry);
      }
    };

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

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

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

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

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code apicalldetails_cache.PBSshProxyInfo}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:apicalldetails_cache.PBSshProxyInfo)
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfoOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBSshProxyInfo_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBSshProxyInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.class, be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.Builder.class);
      }

      // Construct using be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.internal_static_apicalldetails_cache_PBSshProxyInfo_descriptor;
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo getDefaultInstanceForType() {
        return be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.getDefaultInstance();
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo build() {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo buildPartial() {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo result = new be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo(this);
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo) {
          return mergeFrom((be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo other) {
        if (other == be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.getDefaultInstance()) return this;
        this.mergeUnknownFields(other.getUnknownFields());
        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 {
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      // @@protoc_insertion_point(builder_scope:apicalldetails_cache.PBSshProxyInfo)
    }

    static {
      defaultInstance = new PBSshProxyInfo(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:apicalldetails_cache.PBSshProxyInfo)
    public static final int USERNAME_FIELD_NUMBER = 100;
    /**
     * <code>extend .apicalldetails_cache.PBProxyInfo { ... }</code>
     */
    public static final
      com.google.protobuf.GeneratedMessage.GeneratedExtension<
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo,
        java.lang.String> username = com.google.protobuf.GeneratedMessage
            .newMessageScopedGeneratedExtension(
          be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.getDefaultInstance(),
          0,
          java.lang.String.class,
          null);
    public static final int HOSTKEY_FIELD_NUMBER = 101;
    /**
     * <code>extend .apicalldetails_cache.PBProxyInfo { ... }</code>
     */
    public static final
      com.google.protobuf.GeneratedMessage.GeneratedExtension<
        be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBProxyInfo,
        java.lang.String> hostkey = com.google.protobuf.GeneratedMessage
            .newMessageScopedGeneratedExtension(
          be.iminds.ilabt.jfed.log.cache.ApiCallDetailsProtos.PBSshProxyInfo.getDefaultInstance(),
          1,
          java.lang.String.class,
          null);
  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_apicalldetails_cache_PBApiCallDetails_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_apicalldetails_cache_PBApiCallDetails_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_apicalldetails_cache_PBProxyInfo_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_apicalldetails_cache_PBProxyInfo_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_apicalldetails_cache_PBSshProxyInfo_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_apicalldetails_cache_PBSshProxyInfo_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\024ApiCallDetails.proto\022\024apicalldetails_c" +
      "ache\"\212\010\n\020PBApiCallDetails\022\n\n\002id\030\001 \002(\005\022\025\n" +
      "\rauthorityName\030\002 \001(\t\022\024\n\014authorityUrn\030\003 \001" +
      "(\t\022\025\n\rbaseServerUrl\030\004 \001(\t\022\025\n\rcallServerU" +
      "rl\030\005 \001(\t\0224\n\tproxyInfo\030\006 \001(\0132!.apicalldet" +
      "ails_cache.PBProxyInfo\022 \n\030connectionSslA" +
      "uthUserUrn\030\007 \001(\t\022)\n!connectionSslAuthUse" +
      "rCertificates\030\010 \001(\t\022\024\n\014connectionId\030\t \001(" +
      "\t\022\'\n\037connectionBasicHttpAuthUsername\030\n \001" +
      "(\t\022&\n\036connectionAuthenticationMethod\030\013 \001",
      "(\t\022\032\n\022connectionProtocol\030\014 \001(\t\022\026\n\016connec" +
      "tionType\030\r \001(\t\022\027\n\017httpRequestLine\030\024 \001(\t\022" +
      "\032\n\022httpRequestHeaders\030\025 \001(\t\022\023\n\013httpReque" +
      "st\030\026 \001(\t\022\026\n\016httpStatusLine\030\027 \001(\t\022\033\n\023http" +
      "ResponseHeaders\030\030 \001(\t\022\021\n\thttpReply\030\031 \001(\t" +
      "\022\037\n\027xmlRpcRequestJsonString\030\036 \001(\t\022\035\n\025xml" +
      "RpcReplyJsonString\030\037 \001(\t\022\017\n\007apiName\030( \001(" +
      "\t\022\026\n\016javaMethodName\030) \001(\t\022\026\n\016geniMethodN" +
      "ame\030* \001(\t\022\030\n\020methodParameters\030+ \001(\t\022\027\n\017x" +
      "mlRpcGeniValue\030- \001(\t\022\030\n\020xmlRpcGeniOutput",
      "\030. \001(\t\022\026\n\016xmlRpcGeniCode\030/ \001(\t\022\030\n\020geniRe" +
      "sponseCode\0302 \001(\005\022#\n\033geniResponseCodeDesc" +
      "ription\0303 \001(\t\022\031\n\021geniCodeIsSuccess\0304 \001(\010" +
      "\022\026\n\016geniCodeIsBusy\0305 \001(\010\022\032\n\022geniResponse" +
      "Output\0306 \001(\t\022\021\n\tstartTime\030< \001(\003\022\020\n\010stopT" +
      "ime\030= \001(\003\022\020\n\010rawValue\030A \001(\t\022\033\n\023protogeni" +
      "SpewLogUrl\030E \001(\t\022\027\n\017exceptionString\030F \001(" +
      "\t\"\210\001\n\013PBProxyInfo\0224\n\004type\030\001 \002(\0162&.apical" +
      "ldetails_cache.PBProxyInfo.Type\022\020\n\010hostn" +
      "ame\030\002 \002(\t\022\014\n\004port\030\003 \002(\005\"\031\n\004Type\022\010\n\004Base\020",
      "\001\022\007\n\003SSH\020\002*\010\010d\020\200\200\200\200\002\"y\n\016PBSshProxyInfo23" +
      "\n\010username\022!.apicalldetails_cache.PBProx" +
      "yInfo\030d \001(\t22\n\007hostkey\022!.apicalldetails_" +
      "cache.PBProxyInfo\030e \001(\tB6\n\036be.iminds.ila" +
      "bt.jfed.log.cacheB\024ApiCallDetailsProtos"
    };
    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[] {
        }, assigner);
    internal_static_apicalldetails_cache_PBApiCallDetails_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_apicalldetails_cache_PBApiCallDetails_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
        internal_static_apicalldetails_cache_PBApiCallDetails_descriptor,
        new java.lang.String[] { "Id", "AuthorityName", "AuthorityUrn", "BaseServerUrl", "CallServerUrl", "ProxyInfo", "ConnectionSslAuthUserUrn", "ConnectionSslAuthUserCertificates", "ConnectionId", "ConnectionBasicHttpAuthUsername", "ConnectionAuthenticationMethod", "ConnectionProtocol", "ConnectionType", "HttpRequestLine", "HttpRequestHeaders", "HttpRequest", "HttpStatusLine", "HttpResponseHeaders", "HttpReply", "XmlRpcRequestJsonString", "XmlRpcReplyJsonString", "ApiName", "JavaMethodName", "GeniMethodName", "MethodParameters", "XmlRpcGeniValue", "XmlRpcGeniOutput", "XmlRpcGeniCode", "GeniResponseCode", "GeniResponseCodeDescription", "GeniCodeIsSuccess", "GeniCodeIsBusy", "GeniResponseOutput", "StartTime", "StopTime", "RawValue", "ProtogeniSpewLogUrl", "ExceptionString", });
    internal_static_apicalldetails_cache_PBProxyInfo_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_apicalldetails_cache_PBProxyInfo_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
        internal_static_apicalldetails_cache_PBProxyInfo_descriptor,
        new java.lang.String[] { "Type", "Hostname", "Port", });
    internal_static_apicalldetails_cache_PBSshProxyInfo_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_apicalldetails_cache_PBSshProxyInfo_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
        internal_static_apicalldetails_cache_PBSshProxyInfo_descriptor,
        new java.lang.String[] { });
  }

  // @@protoc_insertion_point(outer_class_scope)
}
