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

com.dominodatalab.api.model.DominoDatasourceApiDataSourceProxyConfigDto Maven / Gradle / Ivy

/*
 * Domino Data Lab API v4
 * This API is going to provide access to all the Domino functions available in the user interface. To authenticate your requests, include your API Key (which you can find on your account page) with the header X-Domino-Api-Key. 
 *
 * The version of the OpenAPI document: 4.0.0
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package com.dominodatalab.api.model;

import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.StringJoiner;
import java.util.Objects;
import java.util.Map;
import java.util.HashMap;
import com.dominodatalab.api.model.DominoDatasourceApiEngineConfig;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonTypeName;
import com.fasterxml.jackson.annotation.JsonValue;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;


/**
 * DominoDatasourceApiDataSourceProxyConfigDto
 */
@JsonPropertyOrder({
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_AVAILABLE_HARDWARE_TIERS,
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_CONFIG,
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_DATA_PLANE_IDS,
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_DATA_SOURCE_NAME,
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_DATA_SOURCE_TYPE,
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_ENGINE_CONFIG,
  DominoDatasourceApiDataSourceProxyConfigDto.JSON_PROPERTY_ENGINE_TYPE
})
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2024-02-03T07:34:01.543562200-05:00[America/New_York]")
public class DominoDatasourceApiDataSourceProxyConfigDto {
  public static final String JSON_PROPERTY_AVAILABLE_HARDWARE_TIERS = "availableHardwareTiers";
  private List availableHardwareTiers = new ArrayList<>();

  public static final String JSON_PROPERTY_CONFIG = "config";
  private Map config = new HashMap<>();

  public static final String JSON_PROPERTY_DATA_PLANE_IDS = "dataPlaneIds";
  private List dataPlaneIds = new ArrayList<>();

  public static final String JSON_PROPERTY_DATA_SOURCE_NAME = "dataSourceName";
  private String dataSourceName;

  /**
   * Gets or Sets dataSourceType
   */
  public enum DataSourceTypeEnum {
    ADLSCONFIG("ADLSConfig"),
    
    AZUREBLOBSTORAGECONFIG("AzureBlobStorageConfig"),
    
    BIGQUERYCONFIG("BigQueryConfig"),
    
    CLICKHOUSECONFIG("ClickHouseConfig"),
    
    DATABRICKSCONFIG("DatabricksConfig"),
    
    DB2CONFIG("DB2Config"),
    
    DRUIDCONFIG("DruidConfig"),
    
    GCSCONFIG("GCSConfig"),
    
    GENERICJDBCCONFIG("GenericJDBCConfig"),
    
    GENERICS3CONFIG("GenericS3Config"),
    
    GREENPLUMCONFIG("GreenplumConfig"),
    
    IGNITECONFIG("IgniteConfig"),
    
    MARIADBCONFIG("MariaDBConfig"),
    
    MONGODBCONFIG("MongoDBConfig"),
    
    MYSQLCONFIG("MySQLConfig"),
    
    NETEZZACONFIG("NetezzaConfig"),
    
    ORACLECONFIG("OracleConfig"),
    
    PALANTIRCONFIG("PalantirConfig"),
    
    POSTGRESQLCONFIG("PostgreSQLConfig"),
    
    REDSHIFTCONFIG("RedshiftConfig"),
    
    S3CONFIG("S3Config"),
    
    SAPHANACONFIG("SAPHanaConfig"),
    
    SINGLESTORECONFIG("SingleStoreConfig"),
    
    SQLSERVERCONFIG("SQLServerConfig"),
    
    SNOWFLAKECONFIG("SnowflakeConfig"),
    
    SYNAPSECONFIG("SynapseConfig"),
    
    TABULARS3GLUECONFIG("TabularS3GlueConfig"),
    
    TERADATACONFIG("TeradataConfig"),
    
    TRINOCONFIG("TrinoConfig"),
    
    VERTICACONFIG("VerticaConfig");

    private String value;

    DataSourceTypeEnum(String value) {
      this.value = value;
    }

    @JsonValue
    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }

    @JsonCreator
    public static DataSourceTypeEnum fromValue(String value) {
      for (DataSourceTypeEnum b : DataSourceTypeEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }
  }

  public static final String JSON_PROPERTY_DATA_SOURCE_TYPE = "dataSourceType";
  private DataSourceTypeEnum dataSourceType;

  public static final String JSON_PROPERTY_ENGINE_CONFIG = "engineConfig";
  private DominoDatasourceApiEngineConfig engineConfig;

  /**
   * Gets or Sets engineType
   */
  public enum EngineTypeEnum {
    DOMINO("Domino"),
    
    STARBURST("Starburst");

    private String value;

    EngineTypeEnum(String value) {
      this.value = value;
    }

    @JsonValue
    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }

    @JsonCreator
    public static EngineTypeEnum fromValue(String value) {
      for (EngineTypeEnum b : EngineTypeEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }
  }

  public static final String JSON_PROPERTY_ENGINE_TYPE = "engineType";
  private EngineTypeEnum engineType;

  public DominoDatasourceApiDataSourceProxyConfigDto() { 
  }

  public DominoDatasourceApiDataSourceProxyConfigDto availableHardwareTiers(List availableHardwareTiers) {
    this.availableHardwareTiers = availableHardwareTiers;
    return this;
  }

  public DominoDatasourceApiDataSourceProxyConfigDto addAvailableHardwareTiersItem(String availableHardwareTiersItem) {
    if (this.availableHardwareTiers == null) {
      this.availableHardwareTiers = new ArrayList<>();
    }
    this.availableHardwareTiers.add(availableHardwareTiersItem);
    return this;
  }

   /**
   * Get availableHardwareTiers
   * @return availableHardwareTiers
  **/
  @javax.annotation.Nonnull
  @JsonProperty(JSON_PROPERTY_AVAILABLE_HARDWARE_TIERS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)

  public List getAvailableHardwareTiers() {
    return availableHardwareTiers;
  }


  @JsonProperty(JSON_PROPERTY_AVAILABLE_HARDWARE_TIERS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setAvailableHardwareTiers(List availableHardwareTiers) {
    this.availableHardwareTiers = availableHardwareTiers;
  }


  public DominoDatasourceApiDataSourceProxyConfigDto config(Map config) {
    this.config = config;
    return this;
  }

  public DominoDatasourceApiDataSourceProxyConfigDto putConfigItem(String key, String configItem) {
    if (this.config == null) {
      this.config = new HashMap<>();
    }
    this.config.put(key, configItem);
    return this;
  }

   /**
   * Get config
   * @return config
  **/
  @javax.annotation.Nonnull
  @JsonProperty(JSON_PROPERTY_CONFIG)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)

  public Map getConfig() {
    return config;
  }


  @JsonProperty(JSON_PROPERTY_CONFIG)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setConfig(Map config) {
    this.config = config;
  }


  public DominoDatasourceApiDataSourceProxyConfigDto dataPlaneIds(List dataPlaneIds) {
    this.dataPlaneIds = dataPlaneIds;
    return this;
  }

  public DominoDatasourceApiDataSourceProxyConfigDto addDataPlaneIdsItem(String dataPlaneIdsItem) {
    if (this.dataPlaneIds == null) {
      this.dataPlaneIds = new ArrayList<>();
    }
    this.dataPlaneIds.add(dataPlaneIdsItem);
    return this;
  }

   /**
   * Get dataPlaneIds
   * @return dataPlaneIds
  **/
  @javax.annotation.Nonnull
  @JsonProperty(JSON_PROPERTY_DATA_PLANE_IDS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)

  public List getDataPlaneIds() {
    return dataPlaneIds;
  }


  @JsonProperty(JSON_PROPERTY_DATA_PLANE_IDS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setDataPlaneIds(List dataPlaneIds) {
    this.dataPlaneIds = dataPlaneIds;
  }


  public DominoDatasourceApiDataSourceProxyConfigDto dataSourceName(String dataSourceName) {
    this.dataSourceName = dataSourceName;
    return this;
  }

   /**
   * Get dataSourceName
   * @return dataSourceName
  **/
  @javax.annotation.Nonnull
  @JsonProperty(JSON_PROPERTY_DATA_SOURCE_NAME)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)

  public String getDataSourceName() {
    return dataSourceName;
  }


  @JsonProperty(JSON_PROPERTY_DATA_SOURCE_NAME)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setDataSourceName(String dataSourceName) {
    this.dataSourceName = dataSourceName;
  }


  public DominoDatasourceApiDataSourceProxyConfigDto dataSourceType(DataSourceTypeEnum dataSourceType) {
    this.dataSourceType = dataSourceType;
    return this;
  }

   /**
   * Get dataSourceType
   * @return dataSourceType
  **/
  @javax.annotation.Nonnull
  @JsonProperty(JSON_PROPERTY_DATA_SOURCE_TYPE)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)

  public DataSourceTypeEnum getDataSourceType() {
    return dataSourceType;
  }


  @JsonProperty(JSON_PROPERTY_DATA_SOURCE_TYPE)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setDataSourceType(DataSourceTypeEnum dataSourceType) {
    this.dataSourceType = dataSourceType;
  }


  public DominoDatasourceApiDataSourceProxyConfigDto engineConfig(DominoDatasourceApiEngineConfig engineConfig) {
    this.engineConfig = engineConfig;
    return this;
  }

   /**
   * Get engineConfig
   * @return engineConfig
  **/
  @javax.annotation.Nullable
  @JsonProperty(JSON_PROPERTY_ENGINE_CONFIG)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)

  public DominoDatasourceApiEngineConfig getEngineConfig() {
    return engineConfig;
  }


  @JsonProperty(JSON_PROPERTY_ENGINE_CONFIG)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setEngineConfig(DominoDatasourceApiEngineConfig engineConfig) {
    this.engineConfig = engineConfig;
  }


  public DominoDatasourceApiDataSourceProxyConfigDto engineType(EngineTypeEnum engineType) {
    this.engineType = engineType;
    return this;
  }

   /**
   * Get engineType
   * @return engineType
  **/
  @javax.annotation.Nonnull
  @JsonProperty(JSON_PROPERTY_ENGINE_TYPE)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)

  public EngineTypeEnum getEngineType() {
    return engineType;
  }


  @JsonProperty(JSON_PROPERTY_ENGINE_TYPE)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setEngineType(EngineTypeEnum engineType) {
    this.engineType = engineType;
  }


  /**
   * Return true if this domino.datasource.api.DataSourceProxyConfigDto object is equal to o.
   */
  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    DominoDatasourceApiDataSourceProxyConfigDto dominoDatasourceApiDataSourceProxyConfigDto = (DominoDatasourceApiDataSourceProxyConfigDto) o;
    return Objects.equals(this.availableHardwareTiers, dominoDatasourceApiDataSourceProxyConfigDto.availableHardwareTiers) &&
        Objects.equals(this.config, dominoDatasourceApiDataSourceProxyConfigDto.config) &&
        Objects.equals(this.dataPlaneIds, dominoDatasourceApiDataSourceProxyConfigDto.dataPlaneIds) &&
        Objects.equals(this.dataSourceName, dominoDatasourceApiDataSourceProxyConfigDto.dataSourceName) &&
        Objects.equals(this.dataSourceType, dominoDatasourceApiDataSourceProxyConfigDto.dataSourceType) &&
        Objects.equals(this.engineConfig, dominoDatasourceApiDataSourceProxyConfigDto.engineConfig) &&
        Objects.equals(this.engineType, dominoDatasourceApiDataSourceProxyConfigDto.engineType);
  }

  @Override
  public int hashCode() {
    return Objects.hash(availableHardwareTiers, config, dataPlaneIds, dataSourceName, dataSourceType, engineConfig, engineType);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class DominoDatasourceApiDataSourceProxyConfigDto {\n");
    sb.append("    availableHardwareTiers: ").append(toIndentedString(availableHardwareTiers)).append("\n");
    sb.append("    config: ").append(toIndentedString(config)).append("\n");
    sb.append("    dataPlaneIds: ").append(toIndentedString(dataPlaneIds)).append("\n");
    sb.append("    dataSourceName: ").append(toIndentedString(dataSourceName)).append("\n");
    sb.append("    dataSourceType: ").append(toIndentedString(dataSourceType)).append("\n");
    sb.append("    engineConfig: ").append(toIndentedString(engineConfig)).append("\n");
    sb.append("    engineType: ").append(toIndentedString(engineType)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }

  /**
   * Convert the instance into URL query string.
   *
   * @return URL query string
   */
  public String toUrlQueryString() {
    return toUrlQueryString(null);
  }

  /**
   * Convert the instance into URL query string.
   *
   * @param prefix prefix of the query string
   * @return URL query string
   */
  public String toUrlQueryString(String prefix) {
    String suffix = "";
    String containerSuffix = "";
    String containerPrefix = "";
    if (prefix == null) {
      // style=form, explode=true, e.g. /pet?name=cat&type=manx
      prefix = "";
    } else {
      // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
      prefix = prefix + "[";
      suffix = "]";
      containerSuffix = "]";
      containerPrefix = "[";
    }

    StringJoiner joiner = new StringJoiner("&");

    // add `availableHardwareTiers` to the URL query string
    if (getAvailableHardwareTiers() != null) {
      for (int i = 0; i < getAvailableHardwareTiers().size(); i++) {
        joiner.add(String.format("%savailableHardwareTiers%s%s=%s", prefix, suffix,
            "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix),
            URLEncoder.encode(String.valueOf(getAvailableHardwareTiers().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
      }
    }

    // add `config` to the URL query string
    if (getConfig() != null) {
      for (String _key : getConfig().keySet()) {
        joiner.add(String.format("%sconfig%s%s=%s", prefix, suffix,
            "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, _key, containerSuffix),
            getConfig().get(_key), URLEncoder.encode(String.valueOf(getConfig().get(_key)), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
      }
    }

    // add `dataPlaneIds` to the URL query string
    if (getDataPlaneIds() != null) {
      for (int i = 0; i < getDataPlaneIds().size(); i++) {
        joiner.add(String.format("%sdataPlaneIds%s%s=%s", prefix, suffix,
            "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix),
            URLEncoder.encode(String.valueOf(getDataPlaneIds().get(i)), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
      }
    }

    // add `dataSourceName` to the URL query string
    if (getDataSourceName() != null) {
      joiner.add(String.format("%sdataSourceName%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDataSourceName()), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
    }

    // add `dataSourceType` to the URL query string
    if (getDataSourceType() != null) {
      joiner.add(String.format("%sdataSourceType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDataSourceType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
    }

    // add `engineConfig` to the URL query string
    if (getEngineConfig() != null) {
      joiner.add(getEngineConfig().toUrlQueryString(prefix + "engineConfig" + suffix));
    }

    // add `engineType` to the URL query string
    if (getEngineType() != null) {
      joiner.add(String.format("%sengineType%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getEngineType()), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
    }

    return joiner.toString();
  }
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy