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

com.dimajix.flowman.kernel.proto.session.SessionDetails Maven / Gradle / Ivy

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

package com.dimajix.flowman.kernel.proto.session;

/**
 * Protobuf type {@code com.dimajix.flowman.kernel.session.SessionDetails}
 */
public final class SessionDetails extends
    com.dimajix.shaded.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:com.dimajix.flowman.kernel.session.SessionDetails)
    SessionDetailsOrBuilder {
private static final long serialVersionUID = 0L;
  // Use SessionDetails.newBuilder() to construct.
  private SessionDetails(com.dimajix.shaded.protobuf.GeneratedMessageV3.Builder builder) {
    super(builder);
  }
  private SessionDetails() {
    id_ = "";
    name_ = "";
    workspace_ = "";
    namespace_ = "";
    project_ = "";
    projectVersion_ = "";
    projectDescription_ = "";
    projectBasedir_ = "";
    projectFilename_ = "";
    profiles_ =
        com.dimajix.shaded.protobuf.LazyStringArrayList.emptyList();
  }

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

  public static final com.dimajix.shaded.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_descriptor;
  }

  @SuppressWarnings({"rawtypes"})
  @java.lang.Override
  protected com.dimajix.shaded.protobuf.MapField internalGetMapField(
      int number) {
    switch (number) {
      case 11:
        return internalGetEnvironment();
      case 12:
        return internalGetConfig();
      case 13:
        return internalGetFlowmanConfig();
      case 14:
        return internalGetHadoopConfig();
      case 15:
        return internalGetSparkConfig();
      default:
        throw new RuntimeException(
            "Invalid map field number: " + number);
    }
  }
  @java.lang.Override
  protected com.dimajix.shaded.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            com.dimajix.flowman.kernel.proto.session.SessionDetails.class, com.dimajix.flowman.kernel.proto.session.SessionDetails.Builder.class);
  }

  private int bitField0_;
  public static final int ID_FIELD_NUMBER = 1;
  @SuppressWarnings("serial")
  private volatile java.lang.Object id_ = "";
  /**
   * string id = 1;
   * @return The id.
   */
  @java.lang.Override
  public java.lang.String getId() {
    java.lang.Object ref = id_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      id_ = s;
      return s;
    }
  }
  /**
   * string id = 1;
   * @return The bytes for id.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getIdBytes() {
    java.lang.Object ref = id_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      id_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int NAME_FIELD_NUMBER = 2;
  @SuppressWarnings("serial")
  private volatile java.lang.Object name_ = "";
  /**
   * optional string name = 2;
   * @return Whether the name field is set.
   */
  @java.lang.Override
  public boolean hasName() {
    return ((bitField0_ & 0x00000001) != 0);
  }
  /**
   * optional string name = 2;
   * @return The name.
   */
  @java.lang.Override
  public java.lang.String getName() {
    java.lang.Object ref = name_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      name_ = s;
      return s;
    }
  }
  /**
   * optional string name = 2;
   * @return The bytes for name.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getNameBytes() {
    java.lang.Object ref = name_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      name_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int WORKSPACE_FIELD_NUMBER = 3;
  @SuppressWarnings("serial")
  private volatile java.lang.Object workspace_ = "";
  /**
   * optional string workspace = 3;
   * @return Whether the workspace field is set.
   */
  @java.lang.Override
  public boolean hasWorkspace() {
    return ((bitField0_ & 0x00000002) != 0);
  }
  /**
   * optional string workspace = 3;
   * @return The workspace.
   */
  @java.lang.Override
  public java.lang.String getWorkspace() {
    java.lang.Object ref = workspace_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      workspace_ = s;
      return s;
    }
  }
  /**
   * optional string workspace = 3;
   * @return The bytes for workspace.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getWorkspaceBytes() {
    java.lang.Object ref = workspace_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      workspace_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int NAMESPACE_FIELD_NUMBER = 4;
  @SuppressWarnings("serial")
  private volatile java.lang.Object namespace_ = "";
  /**
   * optional string namespace = 4;
   * @return Whether the namespace field is set.
   */
  @java.lang.Override
  public boolean hasNamespace() {
    return ((bitField0_ & 0x00000004) != 0);
  }
  /**
   * optional string namespace = 4;
   * @return The namespace.
   */
  @java.lang.Override
  public java.lang.String getNamespace() {
    java.lang.Object ref = namespace_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      namespace_ = s;
      return s;
    }
  }
  /**
   * optional string namespace = 4;
   * @return The bytes for namespace.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getNamespaceBytes() {
    java.lang.Object ref = namespace_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      namespace_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int PROJECT_FIELD_NUMBER = 5;
  @SuppressWarnings("serial")
  private volatile java.lang.Object project_ = "";
  /**
   * optional string project = 5;
   * @return Whether the project field is set.
   */
  @java.lang.Override
  public boolean hasProject() {
    return ((bitField0_ & 0x00000008) != 0);
  }
  /**
   * optional string project = 5;
   * @return The project.
   */
  @java.lang.Override
  public java.lang.String getProject() {
    java.lang.Object ref = project_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      project_ = s;
      return s;
    }
  }
  /**
   * optional string project = 5;
   * @return The bytes for project.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getProjectBytes() {
    java.lang.Object ref = project_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      project_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int PROJECTVERSION_FIELD_NUMBER = 6;
  @SuppressWarnings("serial")
  private volatile java.lang.Object projectVersion_ = "";
  /**
   * optional string projectVersion = 6;
   * @return Whether the projectVersion field is set.
   */
  @java.lang.Override
  public boolean hasProjectVersion() {
    return ((bitField0_ & 0x00000010) != 0);
  }
  /**
   * optional string projectVersion = 6;
   * @return The projectVersion.
   */
  @java.lang.Override
  public java.lang.String getProjectVersion() {
    java.lang.Object ref = projectVersion_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      projectVersion_ = s;
      return s;
    }
  }
  /**
   * optional string projectVersion = 6;
   * @return The bytes for projectVersion.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getProjectVersionBytes() {
    java.lang.Object ref = projectVersion_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      projectVersion_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int PROJECTDESCRIPTION_FIELD_NUMBER = 7;
  @SuppressWarnings("serial")
  private volatile java.lang.Object projectDescription_ = "";
  /**
   * optional string projectDescription = 7;
   * @return Whether the projectDescription field is set.
   */
  @java.lang.Override
  public boolean hasProjectDescription() {
    return ((bitField0_ & 0x00000020) != 0);
  }
  /**
   * optional string projectDescription = 7;
   * @return The projectDescription.
   */
  @java.lang.Override
  public java.lang.String getProjectDescription() {
    java.lang.Object ref = projectDescription_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      projectDescription_ = s;
      return s;
    }
  }
  /**
   * optional string projectDescription = 7;
   * @return The bytes for projectDescription.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getProjectDescriptionBytes() {
    java.lang.Object ref = projectDescription_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      projectDescription_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int PROJECTBASEDIR_FIELD_NUMBER = 8;
  @SuppressWarnings("serial")
  private volatile java.lang.Object projectBasedir_ = "";
  /**
   * optional string projectBasedir = 8;
   * @return Whether the projectBasedir field is set.
   */
  @java.lang.Override
  public boolean hasProjectBasedir() {
    return ((bitField0_ & 0x00000040) != 0);
  }
  /**
   * optional string projectBasedir = 8;
   * @return The projectBasedir.
   */
  @java.lang.Override
  public java.lang.String getProjectBasedir() {
    java.lang.Object ref = projectBasedir_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      projectBasedir_ = s;
      return s;
    }
  }
  /**
   * optional string projectBasedir = 8;
   * @return The bytes for projectBasedir.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getProjectBasedirBytes() {
    java.lang.Object ref = projectBasedir_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      projectBasedir_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int PROJECTFILENAME_FIELD_NUMBER = 9;
  @SuppressWarnings("serial")
  private volatile java.lang.Object projectFilename_ = "";
  /**
   * optional string projectFilename = 9;
   * @return Whether the projectFilename field is set.
   */
  @java.lang.Override
  public boolean hasProjectFilename() {
    return ((bitField0_ & 0x00000080) != 0);
  }
  /**
   * optional string projectFilename = 9;
   * @return The projectFilename.
   */
  @java.lang.Override
  public java.lang.String getProjectFilename() {
    java.lang.Object ref = projectFilename_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.dimajix.shaded.protobuf.ByteString bs = 
          (com.dimajix.shaded.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      projectFilename_ = s;
      return s;
    }
  }
  /**
   * optional string projectFilename = 9;
   * @return The bytes for projectFilename.
   */
  @java.lang.Override
  public com.dimajix.shaded.protobuf.ByteString
      getProjectFilenameBytes() {
    java.lang.Object ref = projectFilename_;
    if (ref instanceof java.lang.String) {
      com.dimajix.shaded.protobuf.ByteString b = 
          com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      projectFilename_ = b;
      return b;
    } else {
      return (com.dimajix.shaded.protobuf.ByteString) ref;
    }
  }

  public static final int PROFILES_FIELD_NUMBER = 10;
  @SuppressWarnings("serial")
  private com.dimajix.shaded.protobuf.LazyStringArrayList profiles_ =
      com.dimajix.shaded.protobuf.LazyStringArrayList.emptyList();
  /**
   * repeated string profiles = 10;
   * @return A list containing the profiles.
   */
  public com.dimajix.shaded.protobuf.ProtocolStringList
      getProfilesList() {
    return profiles_;
  }
  /**
   * repeated string profiles = 10;
   * @return The count of profiles.
   */
  public int getProfilesCount() {
    return profiles_.size();
  }
  /**
   * repeated string profiles = 10;
   * @param index The index of the element to return.
   * @return The profiles at the given index.
   */
  public java.lang.String getProfiles(int index) {
    return profiles_.get(index);
  }
  /**
   * repeated string profiles = 10;
   * @param index The index of the value to return.
   * @return The bytes of the profiles at the given index.
   */
  public com.dimajix.shaded.protobuf.ByteString
      getProfilesBytes(int index) {
    return profiles_.getByteString(index);
  }

  public static final int ENVIRONMENT_FIELD_NUMBER = 11;
  private static final class EnvironmentDefaultEntryHolder {
    static final com.dimajix.shaded.protobuf.MapEntry<
        java.lang.String, java.lang.String> defaultEntry =
            com.dimajix.shaded.protobuf.MapEntry
            .newDefaultInstance(
                com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_EnvironmentEntry_descriptor, 
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "",
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "");
  }
  @SuppressWarnings("serial")
  private com.dimajix.shaded.protobuf.MapField<
      java.lang.String, java.lang.String> environment_;
  private com.dimajix.shaded.protobuf.MapField
  internalGetEnvironment() {
    if (environment_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          EnvironmentDefaultEntryHolder.defaultEntry);
    }
    return environment_;
  }
  public int getEnvironmentCount() {
    return internalGetEnvironment().getMap().size();
  }
  /**
   * map<string, string> environment = 11;
   */
  @java.lang.Override
  public boolean containsEnvironment(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetEnvironment().getMap().containsKey(key);
  }
  /**
   * Use {@link #getEnvironmentMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map getEnvironment() {
    return getEnvironmentMap();
  }
  /**
   * map<string, string> environment = 11;
   */
  @java.lang.Override
  public java.util.Map getEnvironmentMap() {
    return internalGetEnvironment().getMap();
  }
  /**
   * map<string, string> environment = 11;
   */
  @java.lang.Override
  public /* nullable */
java.lang.String getEnvironmentOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetEnvironment().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * map<string, string> environment = 11;
   */
  @java.lang.Override
  public java.lang.String getEnvironmentOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetEnvironment().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int CONFIG_FIELD_NUMBER = 12;
  private static final class ConfigDefaultEntryHolder {
    static final com.dimajix.shaded.protobuf.MapEntry<
        java.lang.String, java.lang.String> defaultEntry =
            com.dimajix.shaded.protobuf.MapEntry
            .newDefaultInstance(
                com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_ConfigEntry_descriptor, 
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "",
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "");
  }
  @SuppressWarnings("serial")
  private com.dimajix.shaded.protobuf.MapField<
      java.lang.String, java.lang.String> config_;
  private com.dimajix.shaded.protobuf.MapField
  internalGetConfig() {
    if (config_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          ConfigDefaultEntryHolder.defaultEntry);
    }
    return config_;
  }
  public int getConfigCount() {
    return internalGetConfig().getMap().size();
  }
  /**
   * map<string, string> config = 12;
   */
  @java.lang.Override
  public boolean containsConfig(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetConfig().getMap().containsKey(key);
  }
  /**
   * Use {@link #getConfigMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map getConfig() {
    return getConfigMap();
  }
  /**
   * map<string, string> config = 12;
   */
  @java.lang.Override
  public java.util.Map getConfigMap() {
    return internalGetConfig().getMap();
  }
  /**
   * map<string, string> config = 12;
   */
  @java.lang.Override
  public /* nullable */
java.lang.String getConfigOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetConfig().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * map<string, string> config = 12;
   */
  @java.lang.Override
  public java.lang.String getConfigOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetConfig().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int FLOWMANCONFIG_FIELD_NUMBER = 13;
  private static final class FlowmanConfigDefaultEntryHolder {
    static final com.dimajix.shaded.protobuf.MapEntry<
        java.lang.String, java.lang.String> defaultEntry =
            com.dimajix.shaded.protobuf.MapEntry
            .newDefaultInstance(
                com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_FlowmanConfigEntry_descriptor, 
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "",
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "");
  }
  @SuppressWarnings("serial")
  private com.dimajix.shaded.protobuf.MapField<
      java.lang.String, java.lang.String> flowmanConfig_;
  private com.dimajix.shaded.protobuf.MapField
  internalGetFlowmanConfig() {
    if (flowmanConfig_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          FlowmanConfigDefaultEntryHolder.defaultEntry);
    }
    return flowmanConfig_;
  }
  public int getFlowmanConfigCount() {
    return internalGetFlowmanConfig().getMap().size();
  }
  /**
   * map<string, string> flowmanConfig = 13;
   */
  @java.lang.Override
  public boolean containsFlowmanConfig(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetFlowmanConfig().getMap().containsKey(key);
  }
  /**
   * Use {@link #getFlowmanConfigMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map getFlowmanConfig() {
    return getFlowmanConfigMap();
  }
  /**
   * map<string, string> flowmanConfig = 13;
   */
  @java.lang.Override
  public java.util.Map getFlowmanConfigMap() {
    return internalGetFlowmanConfig().getMap();
  }
  /**
   * map<string, string> flowmanConfig = 13;
   */
  @java.lang.Override
  public /* nullable */
java.lang.String getFlowmanConfigOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetFlowmanConfig().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * map<string, string> flowmanConfig = 13;
   */
  @java.lang.Override
  public java.lang.String getFlowmanConfigOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetFlowmanConfig().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int HADOOPCONFIG_FIELD_NUMBER = 14;
  private static final class HadoopConfigDefaultEntryHolder {
    static final com.dimajix.shaded.protobuf.MapEntry<
        java.lang.String, java.lang.String> defaultEntry =
            com.dimajix.shaded.protobuf.MapEntry
            .newDefaultInstance(
                com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_HadoopConfigEntry_descriptor, 
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "",
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "");
  }
  @SuppressWarnings("serial")
  private com.dimajix.shaded.protobuf.MapField<
      java.lang.String, java.lang.String> hadoopConfig_;
  private com.dimajix.shaded.protobuf.MapField
  internalGetHadoopConfig() {
    if (hadoopConfig_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          HadoopConfigDefaultEntryHolder.defaultEntry);
    }
    return hadoopConfig_;
  }
  public int getHadoopConfigCount() {
    return internalGetHadoopConfig().getMap().size();
  }
  /**
   * map<string, string> hadoopConfig = 14;
   */
  @java.lang.Override
  public boolean containsHadoopConfig(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetHadoopConfig().getMap().containsKey(key);
  }
  /**
   * Use {@link #getHadoopConfigMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map getHadoopConfig() {
    return getHadoopConfigMap();
  }
  /**
   * map<string, string> hadoopConfig = 14;
   */
  @java.lang.Override
  public java.util.Map getHadoopConfigMap() {
    return internalGetHadoopConfig().getMap();
  }
  /**
   * map<string, string> hadoopConfig = 14;
   */
  @java.lang.Override
  public /* nullable */
java.lang.String getHadoopConfigOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetHadoopConfig().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * map<string, string> hadoopConfig = 14;
   */
  @java.lang.Override
  public java.lang.String getHadoopConfigOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetHadoopConfig().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  public static final int SPARKCONFIG_FIELD_NUMBER = 15;
  private static final class SparkConfigDefaultEntryHolder {
    static final com.dimajix.shaded.protobuf.MapEntry<
        java.lang.String, java.lang.String> defaultEntry =
            com.dimajix.shaded.protobuf.MapEntry
            .newDefaultInstance(
                com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_SparkConfigEntry_descriptor, 
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "",
                com.dimajix.shaded.protobuf.WireFormat.FieldType.STRING,
                "");
  }
  @SuppressWarnings("serial")
  private com.dimajix.shaded.protobuf.MapField<
      java.lang.String, java.lang.String> sparkConfig_;
  private com.dimajix.shaded.protobuf.MapField
  internalGetSparkConfig() {
    if (sparkConfig_ == null) {
      return com.google.protobuf.MapField.emptyMapField(
          SparkConfigDefaultEntryHolder.defaultEntry);
    }
    return sparkConfig_;
  }
  public int getSparkConfigCount() {
    return internalGetSparkConfig().getMap().size();
  }
  /**
   * map<string, string> sparkConfig = 15;
   */
  @java.lang.Override
  public boolean containsSparkConfig(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    return internalGetSparkConfig().getMap().containsKey(key);
  }
  /**
   * Use {@link #getSparkConfigMap()} instead.
   */
  @java.lang.Override
  @java.lang.Deprecated
  public java.util.Map getSparkConfig() {
    return getSparkConfigMap();
  }
  /**
   * map<string, string> sparkConfig = 15;
   */
  @java.lang.Override
  public java.util.Map getSparkConfigMap() {
    return internalGetSparkConfig().getMap();
  }
  /**
   * map<string, string> sparkConfig = 15;
   */
  @java.lang.Override
  public /* nullable */
java.lang.String getSparkConfigOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetSparkConfig().getMap();
    return map.containsKey(key) ? map.get(key) : defaultValue;
  }
  /**
   * map<string, string> sparkConfig = 15;
   */
  @java.lang.Override
  public java.lang.String getSparkConfigOrThrow(
      java.lang.String key) {
    if (key == null) { throw new NullPointerException("map key"); }
    java.util.Map map =
        internalGetSparkConfig().getMap();
    if (!map.containsKey(key)) {
      throw new java.lang.IllegalArgumentException();
    }
    return map.get(key);
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.dimajix.shaded.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (!com.dimajix.shaded.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 3, workspace_);
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 4, namespace_);
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 5, project_);
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 6, projectVersion_);
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 7, projectDescription_);
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 8, projectBasedir_);
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 9, projectFilename_);
    }
    for (int i = 0; i < profiles_.size(); i++) {
      com.dimajix.shaded.protobuf.GeneratedMessageV3.writeString(output, 10, profiles_.getRaw(i));
    }
    com.dimajix.shaded.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetEnvironment(),
        EnvironmentDefaultEntryHolder.defaultEntry,
        11);
    com.dimajix.shaded.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetConfig(),
        ConfigDefaultEntryHolder.defaultEntry,
        12);
    com.dimajix.shaded.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetFlowmanConfig(),
        FlowmanConfigDefaultEntryHolder.defaultEntry,
        13);
    com.dimajix.shaded.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetHadoopConfig(),
        HadoopConfigDefaultEntryHolder.defaultEntry,
        14);
    com.dimajix.shaded.protobuf.GeneratedMessageV3
      .serializeStringMapTo(
        output,
        internalGetSparkConfig(),
        SparkConfigDefaultEntryHolder.defaultEntry,
        15);
    getUnknownFields().writeTo(output);
  }

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

    size = 0;
    if (!com.dimajix.shaded.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(3, workspace_);
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(4, namespace_);
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(5, project_);
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(6, projectVersion_);
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(7, projectDescription_);
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(8, projectBasedir_);
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      size += com.dimajix.shaded.protobuf.GeneratedMessageV3.computeStringSize(9, projectFilename_);
    }
    {
      int dataSize = 0;
      for (int i = 0; i < profiles_.size(); i++) {
        dataSize += computeStringSizeNoTag(profiles_.getRaw(i));
      }
      size += dataSize;
      size += 1 * getProfilesList().size();
    }
    for (java.util.Map.Entry entry
         : internalGetEnvironment().getMap().entrySet()) {
      com.dimajix.shaded.protobuf.MapEntry
      environment__ = EnvironmentDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.dimajix.shaded.protobuf.CodedOutputStream
          .computeMessageSize(11, environment__);
    }
    for (java.util.Map.Entry entry
         : internalGetConfig().getMap().entrySet()) {
      com.dimajix.shaded.protobuf.MapEntry
      config__ = ConfigDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.dimajix.shaded.protobuf.CodedOutputStream
          .computeMessageSize(12, config__);
    }
    for (java.util.Map.Entry entry
         : internalGetFlowmanConfig().getMap().entrySet()) {
      com.dimajix.shaded.protobuf.MapEntry
      flowmanConfig__ = FlowmanConfigDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.dimajix.shaded.protobuf.CodedOutputStream
          .computeMessageSize(13, flowmanConfig__);
    }
    for (java.util.Map.Entry entry
         : internalGetHadoopConfig().getMap().entrySet()) {
      com.dimajix.shaded.protobuf.MapEntry
      hadoopConfig__ = HadoopConfigDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.dimajix.shaded.protobuf.CodedOutputStream
          .computeMessageSize(14, hadoopConfig__);
    }
    for (java.util.Map.Entry entry
         : internalGetSparkConfig().getMap().entrySet()) {
      com.dimajix.shaded.protobuf.MapEntry
      sparkConfig__ = SparkConfigDefaultEntryHolder.defaultEntry.newBuilderForType()
          .setKey(entry.getKey())
          .setValue(entry.getValue())
          .build();
      size += com.dimajix.shaded.protobuf.CodedOutputStream
          .computeMessageSize(15, sparkConfig__);
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof com.dimajix.flowman.kernel.proto.session.SessionDetails)) {
      return super.equals(obj);
    }
    com.dimajix.flowman.kernel.proto.session.SessionDetails other = (com.dimajix.flowman.kernel.proto.session.SessionDetails) obj;

    if (!getId()
        .equals(other.getId())) return false;
    if (hasName() != other.hasName()) return false;
    if (hasName()) {
      if (!getName()
          .equals(other.getName())) return false;
    }
    if (hasWorkspace() != other.hasWorkspace()) return false;
    if (hasWorkspace()) {
      if (!getWorkspace()
          .equals(other.getWorkspace())) return false;
    }
    if (hasNamespace() != other.hasNamespace()) return false;
    if (hasNamespace()) {
      if (!getNamespace()
          .equals(other.getNamespace())) return false;
    }
    if (hasProject() != other.hasProject()) return false;
    if (hasProject()) {
      if (!getProject()
          .equals(other.getProject())) return false;
    }
    if (hasProjectVersion() != other.hasProjectVersion()) return false;
    if (hasProjectVersion()) {
      if (!getProjectVersion()
          .equals(other.getProjectVersion())) return false;
    }
    if (hasProjectDescription() != other.hasProjectDescription()) return false;
    if (hasProjectDescription()) {
      if (!getProjectDescription()
          .equals(other.getProjectDescription())) return false;
    }
    if (hasProjectBasedir() != other.hasProjectBasedir()) return false;
    if (hasProjectBasedir()) {
      if (!getProjectBasedir()
          .equals(other.getProjectBasedir())) return false;
    }
    if (hasProjectFilename() != other.hasProjectFilename()) return false;
    if (hasProjectFilename()) {
      if (!getProjectFilename()
          .equals(other.getProjectFilename())) return false;
    }
    if (!getProfilesList()
        .equals(other.getProfilesList())) return false;
    if (!internalGetEnvironment().equals(
        other.internalGetEnvironment())) return false;
    if (!internalGetConfig().equals(
        other.internalGetConfig())) return false;
    if (!internalGetFlowmanConfig().equals(
        other.internalGetFlowmanConfig())) return false;
    if (!internalGetHadoopConfig().equals(
        other.internalGetHadoopConfig())) return false;
    if (!internalGetSparkConfig().equals(
        other.internalGetSparkConfig())) return false;
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + ID_FIELD_NUMBER;
    hash = (53 * hash) + getId().hashCode();
    if (hasName()) {
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
    }
    if (hasWorkspace()) {
      hash = (37 * hash) + WORKSPACE_FIELD_NUMBER;
      hash = (53 * hash) + getWorkspace().hashCode();
    }
    if (hasNamespace()) {
      hash = (37 * hash) + NAMESPACE_FIELD_NUMBER;
      hash = (53 * hash) + getNamespace().hashCode();
    }
    if (hasProject()) {
      hash = (37 * hash) + PROJECT_FIELD_NUMBER;
      hash = (53 * hash) + getProject().hashCode();
    }
    if (hasProjectVersion()) {
      hash = (37 * hash) + PROJECTVERSION_FIELD_NUMBER;
      hash = (53 * hash) + getProjectVersion().hashCode();
    }
    if (hasProjectDescription()) {
      hash = (37 * hash) + PROJECTDESCRIPTION_FIELD_NUMBER;
      hash = (53 * hash) + getProjectDescription().hashCode();
    }
    if (hasProjectBasedir()) {
      hash = (37 * hash) + PROJECTBASEDIR_FIELD_NUMBER;
      hash = (53 * hash) + getProjectBasedir().hashCode();
    }
    if (hasProjectFilename()) {
      hash = (37 * hash) + PROJECTFILENAME_FIELD_NUMBER;
      hash = (53 * hash) + getProjectFilename().hashCode();
    }
    if (getProfilesCount() > 0) {
      hash = (37 * hash) + PROFILES_FIELD_NUMBER;
      hash = (53 * hash) + getProfilesList().hashCode();
    }
    if (!internalGetEnvironment().getMap().isEmpty()) {
      hash = (37 * hash) + ENVIRONMENT_FIELD_NUMBER;
      hash = (53 * hash) + internalGetEnvironment().hashCode();
    }
    if (!internalGetConfig().getMap().isEmpty()) {
      hash = (37 * hash) + CONFIG_FIELD_NUMBER;
      hash = (53 * hash) + internalGetConfig().hashCode();
    }
    if (!internalGetFlowmanConfig().getMap().isEmpty()) {
      hash = (37 * hash) + FLOWMANCONFIG_FIELD_NUMBER;
      hash = (53 * hash) + internalGetFlowmanConfig().hashCode();
    }
    if (!internalGetHadoopConfig().getMap().isEmpty()) {
      hash = (37 * hash) + HADOOPCONFIG_FIELD_NUMBER;
      hash = (53 * hash) + internalGetHadoopConfig().hashCode();
    }
    if (!internalGetSparkConfig().getMap().isEmpty()) {
      hash = (37 * hash) + SPARKCONFIG_FIELD_NUMBER;
      hash = (53 * hash) + internalGetSparkConfig().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      java.nio.ByteBuffer data)
      throws com.dimajix.shaded.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      java.nio.ByteBuffer data,
      com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.dimajix.shaded.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      com.dimajix.shaded.protobuf.ByteString data)
      throws com.dimajix.shaded.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      com.dimajix.shaded.protobuf.ByteString data,
      com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.dimajix.shaded.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(byte[] data)
      throws com.dimajix.shaded.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      byte[] data,
      com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.dimajix.shaded.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      java.io.InputStream input,
      com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseDelimitedFrom(
      java.io.InputStream input,
      com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      com.dimajix.shaded.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static com.dimajix.flowman.kernel.proto.session.SessionDetails parseFrom(
      com.dimajix.shaded.protobuf.CodedInputStream input,
      com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(com.dimajix.flowman.kernel.proto.session.SessionDetails prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.dimajix.shaded.protobuf.GeneratedMessageV3.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * Protobuf type {@code com.dimajix.flowman.kernel.session.SessionDetails}
   */
  public static final class Builder extends
      com.dimajix.shaded.protobuf.GeneratedMessageV3.Builder implements
      // @@protoc_insertion_point(builder_implements:com.dimajix.flowman.kernel.session.SessionDetails)
      com.dimajix.flowman.kernel.proto.session.SessionDetailsOrBuilder {
    public static final com.dimajix.shaded.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_descriptor;
    }

    @SuppressWarnings({"rawtypes"})
    protected com.dimajix.shaded.protobuf.MapField internalGetMapField(
        int number) {
      switch (number) {
        case 11:
          return internalGetEnvironment();
        case 12:
          return internalGetConfig();
        case 13:
          return internalGetFlowmanConfig();
        case 14:
          return internalGetHadoopConfig();
        case 15:
          return internalGetSparkConfig();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @SuppressWarnings({"rawtypes"})
    protected com.dimajix.shaded.protobuf.MapField internalGetMutableMapField(
        int number) {
      switch (number) {
        case 11:
          return internalGetMutableEnvironment();
        case 12:
          return internalGetMutableConfig();
        case 13:
          return internalGetMutableFlowmanConfig();
        case 14:
          return internalGetMutableHadoopConfig();
        case 15:
          return internalGetMutableSparkConfig();
        default:
          throw new RuntimeException(
              "Invalid map field number: " + number);
      }
    }
    @java.lang.Override
    protected com.dimajix.shaded.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.dimajix.flowman.kernel.proto.session.SessionDetails.class, com.dimajix.flowman.kernel.proto.session.SessionDetails.Builder.class);
    }

    // Construct using com.dimajix.flowman.kernel.proto.session.SessionDetails.newBuilder()
    private Builder() {

    }

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

    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      bitField0_ = 0;
      id_ = "";
      name_ = "";
      workspace_ = "";
      namespace_ = "";
      project_ = "";
      projectVersion_ = "";
      projectDescription_ = "";
      projectBasedir_ = "";
      projectFilename_ = "";
      profiles_ =
          com.dimajix.shaded.protobuf.LazyStringArrayList.emptyList();
      internalGetMutableEnvironment().clear();
      internalGetMutableConfig().clear();
      internalGetMutableFlowmanConfig().clear();
      internalGetMutableHadoopConfig().clear();
      internalGetMutableSparkConfig().clear();
      return this;
    }

    @java.lang.Override
    public com.dimajix.shaded.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return com.dimajix.flowman.kernel.proto.session.SessionProto.internal_static_com_dimajix_flowman_kernel_session_SessionDetails_descriptor;
    }

    @java.lang.Override
    public com.dimajix.flowman.kernel.proto.session.SessionDetails getDefaultInstanceForType() {
      return com.dimajix.flowman.kernel.proto.session.SessionDetails.getDefaultInstance();
    }

    @java.lang.Override
    public com.dimajix.flowman.kernel.proto.session.SessionDetails build() {
      com.dimajix.flowman.kernel.proto.session.SessionDetails result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public com.dimajix.flowman.kernel.proto.session.SessionDetails buildPartial() {
      com.dimajix.flowman.kernel.proto.session.SessionDetails result = new com.dimajix.flowman.kernel.proto.session.SessionDetails(this);
      if (bitField0_ != 0) { buildPartial0(result); }
      onBuilt();
      return result;
    }

    private void buildPartial0(com.dimajix.flowman.kernel.proto.session.SessionDetails result) {
      int from_bitField0_ = bitField0_;
      if (((from_bitField0_ & 0x00000001) != 0)) {
        result.id_ = id_;
      }
      int to_bitField0_ = 0;
      if (((from_bitField0_ & 0x00000002) != 0)) {
        result.name_ = name_;
        to_bitField0_ |= 0x00000001;
      }
      if (((from_bitField0_ & 0x00000004) != 0)) {
        result.workspace_ = workspace_;
        to_bitField0_ |= 0x00000002;
      }
      if (((from_bitField0_ & 0x00000008) != 0)) {
        result.namespace_ = namespace_;
        to_bitField0_ |= 0x00000004;
      }
      if (((from_bitField0_ & 0x00000010) != 0)) {
        result.project_ = project_;
        to_bitField0_ |= 0x00000008;
      }
      if (((from_bitField0_ & 0x00000020) != 0)) {
        result.projectVersion_ = projectVersion_;
        to_bitField0_ |= 0x00000010;
      }
      if (((from_bitField0_ & 0x00000040) != 0)) {
        result.projectDescription_ = projectDescription_;
        to_bitField0_ |= 0x00000020;
      }
      if (((from_bitField0_ & 0x00000080) != 0)) {
        result.projectBasedir_ = projectBasedir_;
        to_bitField0_ |= 0x00000040;
      }
      if (((from_bitField0_ & 0x00000100) != 0)) {
        result.projectFilename_ = projectFilename_;
        to_bitField0_ |= 0x00000080;
      }
      if (((from_bitField0_ & 0x00000200) != 0)) {
        profiles_.makeImmutable();
        result.profiles_ = profiles_;
      }
      if (((from_bitField0_ & 0x00000400) != 0)) {
        result.environment_ = internalGetEnvironment();
        result.environment_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00000800) != 0)) {
        result.config_ = internalGetConfig();
        result.config_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00001000) != 0)) {
        result.flowmanConfig_ = internalGetFlowmanConfig();
        result.flowmanConfig_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00002000) != 0)) {
        result.hadoopConfig_ = internalGetHadoopConfig();
        result.hadoopConfig_.makeImmutable();
      }
      if (((from_bitField0_ & 0x00004000) != 0)) {
        result.sparkConfig_ = internalGetSparkConfig();
        result.sparkConfig_.makeImmutable();
      }
      result.bitField0_ |= to_bitField0_;
    }

    @java.lang.Override
    public Builder mergeFrom(com.dimajix.shaded.protobuf.Message other) {
      if (other instanceof com.dimajix.flowman.kernel.proto.session.SessionDetails) {
        return mergeFrom((com.dimajix.flowman.kernel.proto.session.SessionDetails)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(com.dimajix.flowman.kernel.proto.session.SessionDetails other) {
      if (other == com.dimajix.flowman.kernel.proto.session.SessionDetails.getDefaultInstance()) return this;
      if (!other.getId().isEmpty()) {
        id_ = other.id_;
        bitField0_ |= 0x00000001;
        onChanged();
      }
      if (other.hasName()) {
        name_ = other.name_;
        bitField0_ |= 0x00000002;
        onChanged();
      }
      if (other.hasWorkspace()) {
        workspace_ = other.workspace_;
        bitField0_ |= 0x00000004;
        onChanged();
      }
      if (other.hasNamespace()) {
        namespace_ = other.namespace_;
        bitField0_ |= 0x00000008;
        onChanged();
      }
      if (other.hasProject()) {
        project_ = other.project_;
        bitField0_ |= 0x00000010;
        onChanged();
      }
      if (other.hasProjectVersion()) {
        projectVersion_ = other.projectVersion_;
        bitField0_ |= 0x00000020;
        onChanged();
      }
      if (other.hasProjectDescription()) {
        projectDescription_ = other.projectDescription_;
        bitField0_ |= 0x00000040;
        onChanged();
      }
      if (other.hasProjectBasedir()) {
        projectBasedir_ = other.projectBasedir_;
        bitField0_ |= 0x00000080;
        onChanged();
      }
      if (other.hasProjectFilename()) {
        projectFilename_ = other.projectFilename_;
        bitField0_ |= 0x00000100;
        onChanged();
      }
      if (!other.profiles_.isEmpty()) {
        if (profiles_.isEmpty()) {
          profiles_ = other.profiles_;
          bitField0_ |= 0x00000200;
        } else {
          ensureProfilesIsMutable();
          profiles_.addAll(other.profiles_);
        }
        onChanged();
      }
      internalGetMutableEnvironment().mergeFrom(
          other.internalGetEnvironment());
      bitField0_ |= 0x00000400;
      internalGetMutableConfig().mergeFrom(
          other.internalGetConfig());
      bitField0_ |= 0x00000800;
      internalGetMutableFlowmanConfig().mergeFrom(
          other.internalGetFlowmanConfig());
      bitField0_ |= 0x00001000;
      internalGetMutableHadoopConfig().mergeFrom(
          other.internalGetHadoopConfig());
      bitField0_ |= 0x00002000;
      internalGetMutableSparkConfig().mergeFrom(
          other.internalGetSparkConfig());
      bitField0_ |= 0x00004000;
      this.mergeUnknownFields(other.getUnknownFields());
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.dimajix.shaded.protobuf.CodedInputStream input,
        com.dimajix.shaded.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              id_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000001;
              break;
            } // case 10
            case 18: {
              name_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000002;
              break;
            } // case 18
            case 26: {
              workspace_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000004;
              break;
            } // case 26
            case 34: {
              namespace_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000008;
              break;
            } // case 34
            case 42: {
              project_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000010;
              break;
            } // case 42
            case 50: {
              projectVersion_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000020;
              break;
            } // case 50
            case 58: {
              projectDescription_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000040;
              break;
            } // case 58
            case 66: {
              projectBasedir_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000080;
              break;
            } // case 66
            case 74: {
              projectFilename_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000100;
              break;
            } // case 74
            case 82: {
              java.lang.String s = input.readStringRequireUtf8();
              ensureProfilesIsMutable();
              profiles_.add(s);
              break;
            } // case 82
            case 90: {
              com.dimajix.shaded.protobuf.MapEntry
              environment__ = input.readMessage(
                  EnvironmentDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableEnvironment().getMutableMap().put(
                  environment__.getKey(), environment__.getValue());
              bitField0_ |= 0x00000400;
              break;
            } // case 90
            case 98: {
              com.dimajix.shaded.protobuf.MapEntry
              config__ = input.readMessage(
                  ConfigDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableConfig().getMutableMap().put(
                  config__.getKey(), config__.getValue());
              bitField0_ |= 0x00000800;
              break;
            } // case 98
            case 106: {
              com.dimajix.shaded.protobuf.MapEntry
              flowmanConfig__ = input.readMessage(
                  FlowmanConfigDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableFlowmanConfig().getMutableMap().put(
                  flowmanConfig__.getKey(), flowmanConfig__.getValue());
              bitField0_ |= 0x00001000;
              break;
            } // case 106
            case 114: {
              com.dimajix.shaded.protobuf.MapEntry
              hadoopConfig__ = input.readMessage(
                  HadoopConfigDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableHadoopConfig().getMutableMap().put(
                  hadoopConfig__.getKey(), hadoopConfig__.getValue());
              bitField0_ |= 0x00002000;
              break;
            } // case 114
            case 122: {
              com.dimajix.shaded.protobuf.MapEntry
              sparkConfig__ = input.readMessage(
                  SparkConfigDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
              internalGetMutableSparkConfig().getMutableMap().put(
                  sparkConfig__.getKey(), sparkConfig__.getValue());
              bitField0_ |= 0x00004000;
              break;
            } // case 122
            default: {
              if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                done = true; // was an endgroup tag
              }
              break;
            } // default:
          } // switch (tag)
        } // while (!done)
      } catch (com.dimajix.shaded.protobuf.InvalidProtocolBufferException e) {
        throw e.unwrapIOException();
      } finally {
        onChanged();
      } // finally
      return this;
    }
    private int bitField0_;

    private java.lang.Object id_ = "";
    /**
     * string id = 1;
     * @return The id.
     */
    public java.lang.String getId() {
      java.lang.Object ref = id_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        id_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string id = 1;
     * @return The bytes for id.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getIdBytes() {
      java.lang.Object ref = id_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        id_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * string id = 1;
     * @param value The id to set.
     * @return This builder for chaining.
     */
    public Builder setId(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      id_ = value;
      bitField0_ |= 0x00000001;
      onChanged();
      return this;
    }
    /**
     * string id = 1;
     * @return This builder for chaining.
     */
    public Builder clearId() {
      id_ = getDefaultInstance().getId();
      bitField0_ = (bitField0_ & ~0x00000001);
      onChanged();
      return this;
    }
    /**
     * string id = 1;
     * @param value The bytes for id to set.
     * @return This builder for chaining.
     */
    public Builder setIdBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      id_ = value;
      bitField0_ |= 0x00000001;
      onChanged();
      return this;
    }

    private java.lang.Object name_ = "";
    /**
     * optional string name = 2;
     * @return Whether the name field is set.
     */
    public boolean hasName() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * optional string name = 2;
     * @return The name.
     */
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string name = 2;
     * @return The bytes for name.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string name = 2;
     * @param value The name to set.
     * @return This builder for chaining.
     */
    public Builder setName(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      name_ = value;
      bitField0_ |= 0x00000002;
      onChanged();
      return this;
    }
    /**
     * optional string name = 2;
     * @return This builder for chaining.
     */
    public Builder clearName() {
      name_ = getDefaultInstance().getName();
      bitField0_ = (bitField0_ & ~0x00000002);
      onChanged();
      return this;
    }
    /**
     * optional string name = 2;
     * @param value The bytes for name to set.
     * @return This builder for chaining.
     */
    public Builder setNameBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      name_ = value;
      bitField0_ |= 0x00000002;
      onChanged();
      return this;
    }

    private java.lang.Object workspace_ = "";
    /**
     * optional string workspace = 3;
     * @return Whether the workspace field is set.
     */
    public boolean hasWorkspace() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * optional string workspace = 3;
     * @return The workspace.
     */
    public java.lang.String getWorkspace() {
      java.lang.Object ref = workspace_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        workspace_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string workspace = 3;
     * @return The bytes for workspace.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getWorkspaceBytes() {
      java.lang.Object ref = workspace_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        workspace_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string workspace = 3;
     * @param value The workspace to set.
     * @return This builder for chaining.
     */
    public Builder setWorkspace(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      workspace_ = value;
      bitField0_ |= 0x00000004;
      onChanged();
      return this;
    }
    /**
     * optional string workspace = 3;
     * @return This builder for chaining.
     */
    public Builder clearWorkspace() {
      workspace_ = getDefaultInstance().getWorkspace();
      bitField0_ = (bitField0_ & ~0x00000004);
      onChanged();
      return this;
    }
    /**
     * optional string workspace = 3;
     * @param value The bytes for workspace to set.
     * @return This builder for chaining.
     */
    public Builder setWorkspaceBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      workspace_ = value;
      bitField0_ |= 0x00000004;
      onChanged();
      return this;
    }

    private java.lang.Object namespace_ = "";
    /**
     * optional string namespace = 4;
     * @return Whether the namespace field is set.
     */
    public boolean hasNamespace() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * optional string namespace = 4;
     * @return The namespace.
     */
    public java.lang.String getNamespace() {
      java.lang.Object ref = namespace_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        namespace_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string namespace = 4;
     * @return The bytes for namespace.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getNamespaceBytes() {
      java.lang.Object ref = namespace_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        namespace_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string namespace = 4;
     * @param value The namespace to set.
     * @return This builder for chaining.
     */
    public Builder setNamespace(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      namespace_ = value;
      bitField0_ |= 0x00000008;
      onChanged();
      return this;
    }
    /**
     * optional string namespace = 4;
     * @return This builder for chaining.
     */
    public Builder clearNamespace() {
      namespace_ = getDefaultInstance().getNamespace();
      bitField0_ = (bitField0_ & ~0x00000008);
      onChanged();
      return this;
    }
    /**
     * optional string namespace = 4;
     * @param value The bytes for namespace to set.
     * @return This builder for chaining.
     */
    public Builder setNamespaceBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      namespace_ = value;
      bitField0_ |= 0x00000008;
      onChanged();
      return this;
    }

    private java.lang.Object project_ = "";
    /**
     * optional string project = 5;
     * @return Whether the project field is set.
     */
    public boolean hasProject() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * optional string project = 5;
     * @return The project.
     */
    public java.lang.String getProject() {
      java.lang.Object ref = project_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        project_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string project = 5;
     * @return The bytes for project.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getProjectBytes() {
      java.lang.Object ref = project_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        project_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string project = 5;
     * @param value The project to set.
     * @return This builder for chaining.
     */
    public Builder setProject(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      project_ = value;
      bitField0_ |= 0x00000010;
      onChanged();
      return this;
    }
    /**
     * optional string project = 5;
     * @return This builder for chaining.
     */
    public Builder clearProject() {
      project_ = getDefaultInstance().getProject();
      bitField0_ = (bitField0_ & ~0x00000010);
      onChanged();
      return this;
    }
    /**
     * optional string project = 5;
     * @param value The bytes for project to set.
     * @return This builder for chaining.
     */
    public Builder setProjectBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      project_ = value;
      bitField0_ |= 0x00000010;
      onChanged();
      return this;
    }

    private java.lang.Object projectVersion_ = "";
    /**
     * optional string projectVersion = 6;
     * @return Whether the projectVersion field is set.
     */
    public boolean hasProjectVersion() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * optional string projectVersion = 6;
     * @return The projectVersion.
     */
    public java.lang.String getProjectVersion() {
      java.lang.Object ref = projectVersion_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectVersion_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string projectVersion = 6;
     * @return The bytes for projectVersion.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getProjectVersionBytes() {
      java.lang.Object ref = projectVersion_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectVersion_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string projectVersion = 6;
     * @param value The projectVersion to set.
     * @return This builder for chaining.
     */
    public Builder setProjectVersion(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      projectVersion_ = value;
      bitField0_ |= 0x00000020;
      onChanged();
      return this;
    }
    /**
     * optional string projectVersion = 6;
     * @return This builder for chaining.
     */
    public Builder clearProjectVersion() {
      projectVersion_ = getDefaultInstance().getProjectVersion();
      bitField0_ = (bitField0_ & ~0x00000020);
      onChanged();
      return this;
    }
    /**
     * optional string projectVersion = 6;
     * @param value The bytes for projectVersion to set.
     * @return This builder for chaining.
     */
    public Builder setProjectVersionBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      projectVersion_ = value;
      bitField0_ |= 0x00000020;
      onChanged();
      return this;
    }

    private java.lang.Object projectDescription_ = "";
    /**
     * optional string projectDescription = 7;
     * @return Whether the projectDescription field is set.
     */
    public boolean hasProjectDescription() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * optional string projectDescription = 7;
     * @return The projectDescription.
     */
    public java.lang.String getProjectDescription() {
      java.lang.Object ref = projectDescription_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectDescription_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string projectDescription = 7;
     * @return The bytes for projectDescription.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getProjectDescriptionBytes() {
      java.lang.Object ref = projectDescription_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectDescription_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string projectDescription = 7;
     * @param value The projectDescription to set.
     * @return This builder for chaining.
     */
    public Builder setProjectDescription(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      projectDescription_ = value;
      bitField0_ |= 0x00000040;
      onChanged();
      return this;
    }
    /**
     * optional string projectDescription = 7;
     * @return This builder for chaining.
     */
    public Builder clearProjectDescription() {
      projectDescription_ = getDefaultInstance().getProjectDescription();
      bitField0_ = (bitField0_ & ~0x00000040);
      onChanged();
      return this;
    }
    /**
     * optional string projectDescription = 7;
     * @param value The bytes for projectDescription to set.
     * @return This builder for chaining.
     */
    public Builder setProjectDescriptionBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      projectDescription_ = value;
      bitField0_ |= 0x00000040;
      onChanged();
      return this;
    }

    private java.lang.Object projectBasedir_ = "";
    /**
     * optional string projectBasedir = 8;
     * @return Whether the projectBasedir field is set.
     */
    public boolean hasProjectBasedir() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * optional string projectBasedir = 8;
     * @return The projectBasedir.
     */
    public java.lang.String getProjectBasedir() {
      java.lang.Object ref = projectBasedir_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectBasedir_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string projectBasedir = 8;
     * @return The bytes for projectBasedir.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getProjectBasedirBytes() {
      java.lang.Object ref = projectBasedir_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectBasedir_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string projectBasedir = 8;
     * @param value The projectBasedir to set.
     * @return This builder for chaining.
     */
    public Builder setProjectBasedir(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      projectBasedir_ = value;
      bitField0_ |= 0x00000080;
      onChanged();
      return this;
    }
    /**
     * optional string projectBasedir = 8;
     * @return This builder for chaining.
     */
    public Builder clearProjectBasedir() {
      projectBasedir_ = getDefaultInstance().getProjectBasedir();
      bitField0_ = (bitField0_ & ~0x00000080);
      onChanged();
      return this;
    }
    /**
     * optional string projectBasedir = 8;
     * @param value The bytes for projectBasedir to set.
     * @return This builder for chaining.
     */
    public Builder setProjectBasedirBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      projectBasedir_ = value;
      bitField0_ |= 0x00000080;
      onChanged();
      return this;
    }

    private java.lang.Object projectFilename_ = "";
    /**
     * optional string projectFilename = 9;
     * @return Whether the projectFilename field is set.
     */
    public boolean hasProjectFilename() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * optional string projectFilename = 9;
     * @return The projectFilename.
     */
    public java.lang.String getProjectFilename() {
      java.lang.Object ref = projectFilename_;
      if (!(ref instanceof java.lang.String)) {
        com.dimajix.shaded.protobuf.ByteString bs =
            (com.dimajix.shaded.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        projectFilename_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string projectFilename = 9;
     * @return The bytes for projectFilename.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getProjectFilenameBytes() {
      java.lang.Object ref = projectFilename_;
      if (ref instanceof String) {
        com.dimajix.shaded.protobuf.ByteString b = 
            com.dimajix.shaded.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        projectFilename_ = b;
        return b;
      } else {
        return (com.dimajix.shaded.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string projectFilename = 9;
     * @param value The projectFilename to set.
     * @return This builder for chaining.
     */
    public Builder setProjectFilename(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      projectFilename_ = value;
      bitField0_ |= 0x00000100;
      onChanged();
      return this;
    }
    /**
     * optional string projectFilename = 9;
     * @return This builder for chaining.
     */
    public Builder clearProjectFilename() {
      projectFilename_ = getDefaultInstance().getProjectFilename();
      bitField0_ = (bitField0_ & ~0x00000100);
      onChanged();
      return this;
    }
    /**
     * optional string projectFilename = 9;
     * @param value The bytes for projectFilename to set.
     * @return This builder for chaining.
     */
    public Builder setProjectFilenameBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      projectFilename_ = value;
      bitField0_ |= 0x00000100;
      onChanged();
      return this;
    }

    private com.dimajix.shaded.protobuf.LazyStringArrayList profiles_ =
        com.dimajix.shaded.protobuf.LazyStringArrayList.emptyList();
    private void ensureProfilesIsMutable() {
      if (!profiles_.isModifiable()) {
        profiles_ = new com.google.protobuf.LazyStringArrayList(profiles_);
      }
      bitField0_ |= 0x00000200;
    }
    /**
     * repeated string profiles = 10;
     * @return A list containing the profiles.
     */
    public com.dimajix.shaded.protobuf.ProtocolStringList
        getProfilesList() {
      profiles_.makeImmutable();
      return profiles_;
    }
    /**
     * repeated string profiles = 10;
     * @return The count of profiles.
     */
    public int getProfilesCount() {
      return profiles_.size();
    }
    /**
     * repeated string profiles = 10;
     * @param index The index of the element to return.
     * @return The profiles at the given index.
     */
    public java.lang.String getProfiles(int index) {
      return profiles_.get(index);
    }
    /**
     * repeated string profiles = 10;
     * @param index The index of the value to return.
     * @return The bytes of the profiles at the given index.
     */
    public com.dimajix.shaded.protobuf.ByteString
        getProfilesBytes(int index) {
      return profiles_.getByteString(index);
    }
    /**
     * repeated string profiles = 10;
     * @param index The index to set the value at.
     * @param value The profiles to set.
     * @return This builder for chaining.
     */
    public Builder setProfiles(
        int index, java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      ensureProfilesIsMutable();
      profiles_.set(index, value);
      bitField0_ |= 0x00000200;
      onChanged();
      return this;
    }
    /**
     * repeated string profiles = 10;
     * @param value The profiles to add.
     * @return This builder for chaining.
     */
    public Builder addProfiles(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      ensureProfilesIsMutable();
      profiles_.add(value);
      bitField0_ |= 0x00000200;
      onChanged();
      return this;
    }
    /**
     * repeated string profiles = 10;
     * @param values The profiles to add.
     * @return This builder for chaining.
     */
    public Builder addAllProfiles(
        java.lang.Iterable values) {
      ensureProfilesIsMutable();
      com.dimajix.shaded.protobuf.AbstractMessageLite.Builder.addAll(
          values, profiles_);
      bitField0_ |= 0x00000200;
      onChanged();
      return this;
    }
    /**
     * repeated string profiles = 10;
     * @return This builder for chaining.
     */
    public Builder clearProfiles() {
      profiles_ =
        com.dimajix.shaded.protobuf.LazyStringArrayList.emptyList();
      bitField0_ = (bitField0_ & ~0x00000200);;
      onChanged();
      return this;
    }
    /**
     * repeated string profiles = 10;
     * @param value The bytes of the profiles to add.
     * @return This builder for chaining.
     */
    public Builder addProfilesBytes(
        com.dimajix.shaded.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      ensureProfilesIsMutable();
      profiles_.add(value);
      bitField0_ |= 0x00000200;
      onChanged();
      return this;
    }

    private com.dimajix.shaded.protobuf.MapField<
        java.lang.String, java.lang.String> environment_;
    private com.dimajix.shaded.protobuf.MapField
        internalGetEnvironment() {
      if (environment_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            EnvironmentDefaultEntryHolder.defaultEntry);
      }
      return environment_;
    }
    private com.dimajix.shaded.protobuf.MapField
        internalGetMutableEnvironment() {
      if (environment_ == null) {
        environment_ = com.dimajix.shaded.protobuf.MapField.newMapField(
            EnvironmentDefaultEntryHolder.defaultEntry);
      }
      if (!environment_.isMutable()) {
        environment_ = environment_.copy();
      }
      bitField0_ |= 0x00000400;
      onChanged();
      return environment_;
    }
    public int getEnvironmentCount() {
      return internalGetEnvironment().getMap().size();
    }
    /**
     * map<string, string> environment = 11;
     */
    @java.lang.Override
    public boolean containsEnvironment(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetEnvironment().getMap().containsKey(key);
    }
    /**
     * Use {@link #getEnvironmentMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getEnvironment() {
      return getEnvironmentMap();
    }
    /**
     * map<string, string> environment = 11;
     */
    @java.lang.Override
    public java.util.Map getEnvironmentMap() {
      return internalGetEnvironment().getMap();
    }
    /**
     * map<string, string> environment = 11;
     */
    @java.lang.Override
    public /* nullable */
java.lang.String getEnvironmentOrDefault(
        java.lang.String key,
        /* nullable */
java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetEnvironment().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * map<string, string> environment = 11;
     */
    @java.lang.Override
    public java.lang.String getEnvironmentOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetEnvironment().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearEnvironment() {
      bitField0_ = (bitField0_ & ~0x00000400);
      internalGetMutableEnvironment().getMutableMap()
          .clear();
      return this;
    }
    /**
     * map<string, string> environment = 11;
     */
    public Builder removeEnvironment(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableEnvironment().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map
        getMutableEnvironment() {
      bitField0_ |= 0x00000400;
      return internalGetMutableEnvironment().getMutableMap();
    }
    /**
     * map<string, string> environment = 11;
     */
    public Builder putEnvironment(
        java.lang.String key,
        java.lang.String value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableEnvironment().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00000400;
      return this;
    }
    /**
     * map<string, string> environment = 11;
     */
    public Builder putAllEnvironment(
        java.util.Map values) {
      internalGetMutableEnvironment().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00000400;
      return this;
    }

    private com.dimajix.shaded.protobuf.MapField<
        java.lang.String, java.lang.String> config_;
    private com.dimajix.shaded.protobuf.MapField
        internalGetConfig() {
      if (config_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            ConfigDefaultEntryHolder.defaultEntry);
      }
      return config_;
    }
    private com.dimajix.shaded.protobuf.MapField
        internalGetMutableConfig() {
      if (config_ == null) {
        config_ = com.dimajix.shaded.protobuf.MapField.newMapField(
            ConfigDefaultEntryHolder.defaultEntry);
      }
      if (!config_.isMutable()) {
        config_ = config_.copy();
      }
      bitField0_ |= 0x00000800;
      onChanged();
      return config_;
    }
    public int getConfigCount() {
      return internalGetConfig().getMap().size();
    }
    /**
     * map<string, string> config = 12;
     */
    @java.lang.Override
    public boolean containsConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetConfig().getMap().containsKey(key);
    }
    /**
     * Use {@link #getConfigMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getConfig() {
      return getConfigMap();
    }
    /**
     * map<string, string> config = 12;
     */
    @java.lang.Override
    public java.util.Map getConfigMap() {
      return internalGetConfig().getMap();
    }
    /**
     * map<string, string> config = 12;
     */
    @java.lang.Override
    public /* nullable */
java.lang.String getConfigOrDefault(
        java.lang.String key,
        /* nullable */
java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetConfig().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * map<string, string> config = 12;
     */
    @java.lang.Override
    public java.lang.String getConfigOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetConfig().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearConfig() {
      bitField0_ = (bitField0_ & ~0x00000800);
      internalGetMutableConfig().getMutableMap()
          .clear();
      return this;
    }
    /**
     * map<string, string> config = 12;
     */
    public Builder removeConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableConfig().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map
        getMutableConfig() {
      bitField0_ |= 0x00000800;
      return internalGetMutableConfig().getMutableMap();
    }
    /**
     * map<string, string> config = 12;
     */
    public Builder putConfig(
        java.lang.String key,
        java.lang.String value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableConfig().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00000800;
      return this;
    }
    /**
     * map<string, string> config = 12;
     */
    public Builder putAllConfig(
        java.util.Map values) {
      internalGetMutableConfig().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00000800;
      return this;
    }

    private com.dimajix.shaded.protobuf.MapField<
        java.lang.String, java.lang.String> flowmanConfig_;
    private com.dimajix.shaded.protobuf.MapField
        internalGetFlowmanConfig() {
      if (flowmanConfig_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            FlowmanConfigDefaultEntryHolder.defaultEntry);
      }
      return flowmanConfig_;
    }
    private com.dimajix.shaded.protobuf.MapField
        internalGetMutableFlowmanConfig() {
      if (flowmanConfig_ == null) {
        flowmanConfig_ = com.dimajix.shaded.protobuf.MapField.newMapField(
            FlowmanConfigDefaultEntryHolder.defaultEntry);
      }
      if (!flowmanConfig_.isMutable()) {
        flowmanConfig_ = flowmanConfig_.copy();
      }
      bitField0_ |= 0x00001000;
      onChanged();
      return flowmanConfig_;
    }
    public int getFlowmanConfigCount() {
      return internalGetFlowmanConfig().getMap().size();
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    @java.lang.Override
    public boolean containsFlowmanConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetFlowmanConfig().getMap().containsKey(key);
    }
    /**
     * Use {@link #getFlowmanConfigMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getFlowmanConfig() {
      return getFlowmanConfigMap();
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    @java.lang.Override
    public java.util.Map getFlowmanConfigMap() {
      return internalGetFlowmanConfig().getMap();
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    @java.lang.Override
    public /* nullable */
java.lang.String getFlowmanConfigOrDefault(
        java.lang.String key,
        /* nullable */
java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetFlowmanConfig().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    @java.lang.Override
    public java.lang.String getFlowmanConfigOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetFlowmanConfig().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearFlowmanConfig() {
      bitField0_ = (bitField0_ & ~0x00001000);
      internalGetMutableFlowmanConfig().getMutableMap()
          .clear();
      return this;
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    public Builder removeFlowmanConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableFlowmanConfig().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map
        getMutableFlowmanConfig() {
      bitField0_ |= 0x00001000;
      return internalGetMutableFlowmanConfig().getMutableMap();
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    public Builder putFlowmanConfig(
        java.lang.String key,
        java.lang.String value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableFlowmanConfig().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00001000;
      return this;
    }
    /**
     * map<string, string> flowmanConfig = 13;
     */
    public Builder putAllFlowmanConfig(
        java.util.Map values) {
      internalGetMutableFlowmanConfig().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00001000;
      return this;
    }

    private com.dimajix.shaded.protobuf.MapField<
        java.lang.String, java.lang.String> hadoopConfig_;
    private com.dimajix.shaded.protobuf.MapField
        internalGetHadoopConfig() {
      if (hadoopConfig_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            HadoopConfigDefaultEntryHolder.defaultEntry);
      }
      return hadoopConfig_;
    }
    private com.dimajix.shaded.protobuf.MapField
        internalGetMutableHadoopConfig() {
      if (hadoopConfig_ == null) {
        hadoopConfig_ = com.dimajix.shaded.protobuf.MapField.newMapField(
            HadoopConfigDefaultEntryHolder.defaultEntry);
      }
      if (!hadoopConfig_.isMutable()) {
        hadoopConfig_ = hadoopConfig_.copy();
      }
      bitField0_ |= 0x00002000;
      onChanged();
      return hadoopConfig_;
    }
    public int getHadoopConfigCount() {
      return internalGetHadoopConfig().getMap().size();
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    @java.lang.Override
    public boolean containsHadoopConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetHadoopConfig().getMap().containsKey(key);
    }
    /**
     * Use {@link #getHadoopConfigMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getHadoopConfig() {
      return getHadoopConfigMap();
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    @java.lang.Override
    public java.util.Map getHadoopConfigMap() {
      return internalGetHadoopConfig().getMap();
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    @java.lang.Override
    public /* nullable */
java.lang.String getHadoopConfigOrDefault(
        java.lang.String key,
        /* nullable */
java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetHadoopConfig().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    @java.lang.Override
    public java.lang.String getHadoopConfigOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetHadoopConfig().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearHadoopConfig() {
      bitField0_ = (bitField0_ & ~0x00002000);
      internalGetMutableHadoopConfig().getMutableMap()
          .clear();
      return this;
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    public Builder removeHadoopConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableHadoopConfig().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map
        getMutableHadoopConfig() {
      bitField0_ |= 0x00002000;
      return internalGetMutableHadoopConfig().getMutableMap();
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    public Builder putHadoopConfig(
        java.lang.String key,
        java.lang.String value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableHadoopConfig().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00002000;
      return this;
    }
    /**
     * map<string, string> hadoopConfig = 14;
     */
    public Builder putAllHadoopConfig(
        java.util.Map values) {
      internalGetMutableHadoopConfig().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00002000;
      return this;
    }

    private com.dimajix.shaded.protobuf.MapField<
        java.lang.String, java.lang.String> sparkConfig_;
    private com.dimajix.shaded.protobuf.MapField
        internalGetSparkConfig() {
      if (sparkConfig_ == null) {
        return com.google.protobuf.MapField.emptyMapField(
            SparkConfigDefaultEntryHolder.defaultEntry);
      }
      return sparkConfig_;
    }
    private com.dimajix.shaded.protobuf.MapField
        internalGetMutableSparkConfig() {
      if (sparkConfig_ == null) {
        sparkConfig_ = com.dimajix.shaded.protobuf.MapField.newMapField(
            SparkConfigDefaultEntryHolder.defaultEntry);
      }
      if (!sparkConfig_.isMutable()) {
        sparkConfig_ = sparkConfig_.copy();
      }
      bitField0_ |= 0x00004000;
      onChanged();
      return sparkConfig_;
    }
    public int getSparkConfigCount() {
      return internalGetSparkConfig().getMap().size();
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    @java.lang.Override
    public boolean containsSparkConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      return internalGetSparkConfig().getMap().containsKey(key);
    }
    /**
     * Use {@link #getSparkConfigMap()} instead.
     */
    @java.lang.Override
    @java.lang.Deprecated
    public java.util.Map getSparkConfig() {
      return getSparkConfigMap();
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    @java.lang.Override
    public java.util.Map getSparkConfigMap() {
      return internalGetSparkConfig().getMap();
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    @java.lang.Override
    public /* nullable */
java.lang.String getSparkConfigOrDefault(
        java.lang.String key,
        /* nullable */
java.lang.String defaultValue) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetSparkConfig().getMap();
      return map.containsKey(key) ? map.get(key) : defaultValue;
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    @java.lang.Override
    public java.lang.String getSparkConfigOrThrow(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      java.util.Map map =
          internalGetSparkConfig().getMap();
      if (!map.containsKey(key)) {
        throw new java.lang.IllegalArgumentException();
      }
      return map.get(key);
    }
    public Builder clearSparkConfig() {
      bitField0_ = (bitField0_ & ~0x00004000);
      internalGetMutableSparkConfig().getMutableMap()
          .clear();
      return this;
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    public Builder removeSparkConfig(
        java.lang.String key) {
      if (key == null) { throw new NullPointerException("map key"); }
      internalGetMutableSparkConfig().getMutableMap()
          .remove(key);
      return this;
    }
    /**
     * Use alternate mutation accessors instead.
     */
    @java.lang.Deprecated
    public java.util.Map
        getMutableSparkConfig() {
      bitField0_ |= 0x00004000;
      return internalGetMutableSparkConfig().getMutableMap();
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    public Builder putSparkConfig(
        java.lang.String key,
        java.lang.String value) {
      if (key == null) { throw new NullPointerException("map key"); }
      if (value == null) { throw new NullPointerException("map value"); }
      internalGetMutableSparkConfig().getMutableMap()
          .put(key, value);
      bitField0_ |= 0x00004000;
      return this;
    }
    /**
     * map<string, string> sparkConfig = 15;
     */
    public Builder putAllSparkConfig(
        java.util.Map values) {
      internalGetMutableSparkConfig().getMutableMap()
          .putAll(values);
      bitField0_ |= 0x00004000;
      return this;
    }
    @java.lang.Override
    public final Builder setUnknownFields(
        final com.dimajix.shaded.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

    @java.lang.Override
    public final Builder mergeUnknownFields(
        final com.dimajix.shaded.protobuf.UnknownFieldSet unknownFields) {
      return super.mergeUnknownFields(unknownFields);
    }


    // @@protoc_insertion_point(builder_scope:com.dimajix.flowman.kernel.session.SessionDetails)
  }

  // @@protoc_insertion_point(class_scope:com.dimajix.flowman.kernel.session.SessionDetails)
  private static final com.dimajix.flowman.kernel.proto.session.SessionDetails DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new com.dimajix.flowman.kernel.proto.session.SessionDetails();
  }

  public static com.dimajix.flowman.kernel.proto.session.SessionDetails getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

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

  public static com.dimajix.shaded.protobuf.Parser parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.dimajix.shaded.protobuf.Parser getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public com.dimajix.flowman.kernel.proto.session.SessionDetails getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy