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

com.dominodatalab.api.model.DominoProvenanceApiProvenanceCheckpointDto 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.DominoComputeclusterApiComputeClusterConfig;
import com.dominodatalab.api.model.DominoHardwaretierApiHardwareTierIdentifier;
import com.dominodatalab.api.model.DominoProvenanceApiProvenanceCommit;
import com.dominodatalab.api.model.DominoProvenanceApiProvenanceEnvironmentDetails;
import com.dominodatalab.api.model.DominoProvenanceApiProvenanceEnvironmentVariablesMap;
import com.dominodatalab.api.model.DominoProvenanceApiProvenanceGitRepoDto;
import com.dominodatalab.api.model.DominoProvenanceApiProvenanceImportedProject;
import com.dominodatalab.api.model.Information;
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.time.OffsetDateTime;
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;


/**
 * DominoProvenanceApiProvenanceCheckpointDto
 */
@JsonPropertyOrder({
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_ID,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_PROJECT_ID,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_EXECUTION_ID,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_EXECUTION_NAME,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_CREATED_AT,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_EXECUTION_START,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_ENVIRONMENT_DETAILS,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_COMMIT_MESSAGE,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_DFS_COMMIT,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_DFS_BRANCH,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_GIT_REPO_COMMITS,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_MAIN_GIT_BRANCH,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_IMPORTED_PROJECTS,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_HARDWARE_TIER_ID,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_HARDWARE_TIER_NAME,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_VOLUME_SIZE,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_COMPUTE_CLUSTER_CONFIG,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_ENVIRONMENT_VARIABLES,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_ISOLATE_OUTPUT_COMMITS,
  DominoProvenanceApiProvenanceCheckpointDto.JSON_PROPERTY_ATTRIBUTES
})
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2023-10-17T15:20:46.682098100-04:00[America/New_York]")
public class DominoProvenanceApiProvenanceCheckpointDto {
  public static final String JSON_PROPERTY_ID = "id";
  private String id;

  public static final String JSON_PROPERTY_PROJECT_ID = "projectId";
  private String projectId;

  public static final String JSON_PROPERTY_EXECUTION_ID = "executionId";
  private String executionId;

  public static final String JSON_PROPERTY_EXECUTION_NAME = "executionName";
  private String executionName;

  public static final String JSON_PROPERTY_CREATED_AT = "createdAt";
  private OffsetDateTime createdAt;

  public static final String JSON_PROPERTY_EXECUTION_START = "executionStart";
  private OffsetDateTime executionStart;

  public static final String JSON_PROPERTY_ENVIRONMENT_DETAILS = "environmentDetails";
  private DominoProvenanceApiProvenanceEnvironmentDetails environmentDetails;

  public static final String JSON_PROPERTY_COMMIT_MESSAGE = "commitMessage";
  private String commitMessage;

  public static final String JSON_PROPERTY_DFS_COMMIT = "dfsCommit";
  private DominoProvenanceApiProvenanceCommit dfsCommit;

  public static final String JSON_PROPERTY_DFS_BRANCH = "dfsBranch";
  private String dfsBranch;

  public static final String JSON_PROPERTY_GIT_REPO_COMMITS = "gitRepoCommits";
  private List gitRepoCommits = new ArrayList<>();

  public static final String JSON_PROPERTY_MAIN_GIT_BRANCH = "mainGitBranch";
  private String mainGitBranch;

  public static final String JSON_PROPERTY_IMPORTED_PROJECTS = "importedProjects";
  private List importedProjects = new ArrayList<>();

  public static final String JSON_PROPERTY_HARDWARE_TIER_ID = "hardwareTierId";
  private DominoHardwaretierApiHardwareTierIdentifier hardwareTierId;

  public static final String JSON_PROPERTY_HARDWARE_TIER_NAME = "hardwareTierName";
  private String hardwareTierName;

  public static final String JSON_PROPERTY_VOLUME_SIZE = "volumeSize";
  private Information volumeSize;

  public static final String JSON_PROPERTY_COMPUTE_CLUSTER_CONFIG = "computeClusterConfig";
  private DominoComputeclusterApiComputeClusterConfig computeClusterConfig;

  public static final String JSON_PROPERTY_ENVIRONMENT_VARIABLES = "environmentVariables";
  private DominoProvenanceApiProvenanceEnvironmentVariablesMap environmentVariables;

  public static final String JSON_PROPERTY_ISOLATE_OUTPUT_COMMITS = "isolateOutputCommits";
  private Boolean isolateOutputCommits;

  public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
  private Map attributes = new HashMap<>();

  public DominoProvenanceApiProvenanceCheckpointDto() { 
  }

  public DominoProvenanceApiProvenanceCheckpointDto id(String id) {
    this.id = id;
    return this;
  }

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

  public String getId() {
    return id;
  }


  @JsonProperty(JSON_PROPERTY_ID)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setId(String id) {
    this.id = id;
  }


  public DominoProvenanceApiProvenanceCheckpointDto projectId(String projectId) {
    this.projectId = projectId;
    return this;
  }

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

  public String getProjectId() {
    return projectId;
  }


  @JsonProperty(JSON_PROPERTY_PROJECT_ID)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setProjectId(String projectId) {
    this.projectId = projectId;
  }


  public DominoProvenanceApiProvenanceCheckpointDto executionId(String executionId) {
    this.executionId = executionId;
    return this;
  }

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

  public String getExecutionId() {
    return executionId;
  }


  @JsonProperty(JSON_PROPERTY_EXECUTION_ID)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setExecutionId(String executionId) {
    this.executionId = executionId;
  }


  public DominoProvenanceApiProvenanceCheckpointDto executionName(String executionName) {
    this.executionName = executionName;
    return this;
  }

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

  public String getExecutionName() {
    return executionName;
  }


  @JsonProperty(JSON_PROPERTY_EXECUTION_NAME)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setExecutionName(String executionName) {
    this.executionName = executionName;
  }


  public DominoProvenanceApiProvenanceCheckpointDto createdAt(OffsetDateTime createdAt) {
    this.createdAt = createdAt;
    return this;
  }

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

  public OffsetDateTime getCreatedAt() {
    return createdAt;
  }


  @JsonProperty(JSON_PROPERTY_CREATED_AT)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setCreatedAt(OffsetDateTime createdAt) {
    this.createdAt = createdAt;
  }


  public DominoProvenanceApiProvenanceCheckpointDto executionStart(OffsetDateTime executionStart) {
    this.executionStart = executionStart;
    return this;
  }

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

  public OffsetDateTime getExecutionStart() {
    return executionStart;
  }


  @JsonProperty(JSON_PROPERTY_EXECUTION_START)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setExecutionStart(OffsetDateTime executionStart) {
    this.executionStart = executionStart;
  }


  public DominoProvenanceApiProvenanceCheckpointDto environmentDetails(DominoProvenanceApiProvenanceEnvironmentDetails environmentDetails) {
    this.environmentDetails = environmentDetails;
    return this;
  }

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

  public DominoProvenanceApiProvenanceEnvironmentDetails getEnvironmentDetails() {
    return environmentDetails;
  }


  @JsonProperty(JSON_PROPERTY_ENVIRONMENT_DETAILS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setEnvironmentDetails(DominoProvenanceApiProvenanceEnvironmentDetails environmentDetails) {
    this.environmentDetails = environmentDetails;
  }


  public DominoProvenanceApiProvenanceCheckpointDto commitMessage(String commitMessage) {
    this.commitMessage = commitMessage;
    return this;
  }

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

  public String getCommitMessage() {
    return commitMessage;
  }


  @JsonProperty(JSON_PROPERTY_COMMIT_MESSAGE)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setCommitMessage(String commitMessage) {
    this.commitMessage = commitMessage;
  }


  public DominoProvenanceApiProvenanceCheckpointDto dfsCommit(DominoProvenanceApiProvenanceCommit dfsCommit) {
    this.dfsCommit = dfsCommit;
    return this;
  }

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

  public DominoProvenanceApiProvenanceCommit getDfsCommit() {
    return dfsCommit;
  }


  @JsonProperty(JSON_PROPERTY_DFS_COMMIT)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setDfsCommit(DominoProvenanceApiProvenanceCommit dfsCommit) {
    this.dfsCommit = dfsCommit;
  }


  public DominoProvenanceApiProvenanceCheckpointDto dfsBranch(String dfsBranch) {
    this.dfsBranch = dfsBranch;
    return this;
  }

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

  public String getDfsBranch() {
    return dfsBranch;
  }


  @JsonProperty(JSON_PROPERTY_DFS_BRANCH)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setDfsBranch(String dfsBranch) {
    this.dfsBranch = dfsBranch;
  }


  public DominoProvenanceApiProvenanceCheckpointDto gitRepoCommits(List gitRepoCommits) {
    this.gitRepoCommits = gitRepoCommits;
    return this;
  }

  public DominoProvenanceApiProvenanceCheckpointDto addGitRepoCommitsItem(DominoProvenanceApiProvenanceGitRepoDto gitRepoCommitsItem) {
    if (this.gitRepoCommits == null) {
      this.gitRepoCommits = new ArrayList<>();
    }
    this.gitRepoCommits.add(gitRepoCommitsItem);
    return this;
  }

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

  public List getGitRepoCommits() {
    return gitRepoCommits;
  }


  @JsonProperty(JSON_PROPERTY_GIT_REPO_COMMITS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setGitRepoCommits(List gitRepoCommits) {
    this.gitRepoCommits = gitRepoCommits;
  }


  public DominoProvenanceApiProvenanceCheckpointDto mainGitBranch(String mainGitBranch) {
    this.mainGitBranch = mainGitBranch;
    return this;
  }

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

  public String getMainGitBranch() {
    return mainGitBranch;
  }


  @JsonProperty(JSON_PROPERTY_MAIN_GIT_BRANCH)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setMainGitBranch(String mainGitBranch) {
    this.mainGitBranch = mainGitBranch;
  }


  public DominoProvenanceApiProvenanceCheckpointDto importedProjects(List importedProjects) {
    this.importedProjects = importedProjects;
    return this;
  }

  public DominoProvenanceApiProvenanceCheckpointDto addImportedProjectsItem(DominoProvenanceApiProvenanceImportedProject importedProjectsItem) {
    if (this.importedProjects == null) {
      this.importedProjects = new ArrayList<>();
    }
    this.importedProjects.add(importedProjectsItem);
    return this;
  }

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

  public List getImportedProjects() {
    return importedProjects;
  }


  @JsonProperty(JSON_PROPERTY_IMPORTED_PROJECTS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setImportedProjects(List importedProjects) {
    this.importedProjects = importedProjects;
  }


  public DominoProvenanceApiProvenanceCheckpointDto hardwareTierId(DominoHardwaretierApiHardwareTierIdentifier hardwareTierId) {
    this.hardwareTierId = hardwareTierId;
    return this;
  }

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

  public DominoHardwaretierApiHardwareTierIdentifier getHardwareTierId() {
    return hardwareTierId;
  }


  @JsonProperty(JSON_PROPERTY_HARDWARE_TIER_ID)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setHardwareTierId(DominoHardwaretierApiHardwareTierIdentifier hardwareTierId) {
    this.hardwareTierId = hardwareTierId;
  }


  public DominoProvenanceApiProvenanceCheckpointDto hardwareTierName(String hardwareTierName) {
    this.hardwareTierName = hardwareTierName;
    return this;
  }

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

  public String getHardwareTierName() {
    return hardwareTierName;
  }


  @JsonProperty(JSON_PROPERTY_HARDWARE_TIER_NAME)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setHardwareTierName(String hardwareTierName) {
    this.hardwareTierName = hardwareTierName;
  }


  public DominoProvenanceApiProvenanceCheckpointDto volumeSize(Information volumeSize) {
    this.volumeSize = volumeSize;
    return this;
  }

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

  public Information getVolumeSize() {
    return volumeSize;
  }


  @JsonProperty(JSON_PROPERTY_VOLUME_SIZE)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setVolumeSize(Information volumeSize) {
    this.volumeSize = volumeSize;
  }


  public DominoProvenanceApiProvenanceCheckpointDto computeClusterConfig(DominoComputeclusterApiComputeClusterConfig computeClusterConfig) {
    this.computeClusterConfig = computeClusterConfig;
    return this;
  }

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

  public DominoComputeclusterApiComputeClusterConfig getComputeClusterConfig() {
    return computeClusterConfig;
  }


  @JsonProperty(JSON_PROPERTY_COMPUTE_CLUSTER_CONFIG)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setComputeClusterConfig(DominoComputeclusterApiComputeClusterConfig computeClusterConfig) {
    this.computeClusterConfig = computeClusterConfig;
  }


  public DominoProvenanceApiProvenanceCheckpointDto environmentVariables(DominoProvenanceApiProvenanceEnvironmentVariablesMap environmentVariables) {
    this.environmentVariables = environmentVariables;
    return this;
  }

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

  public DominoProvenanceApiProvenanceEnvironmentVariablesMap getEnvironmentVariables() {
    return environmentVariables;
  }


  @JsonProperty(JSON_PROPERTY_ENVIRONMENT_VARIABLES)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setEnvironmentVariables(DominoProvenanceApiProvenanceEnvironmentVariablesMap environmentVariables) {
    this.environmentVariables = environmentVariables;
  }


  public DominoProvenanceApiProvenanceCheckpointDto isolateOutputCommits(Boolean isolateOutputCommits) {
    this.isolateOutputCommits = isolateOutputCommits;
    return this;
  }

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

  public Boolean getIsolateOutputCommits() {
    return isolateOutputCommits;
  }


  @JsonProperty(JSON_PROPERTY_ISOLATE_OUTPUT_COMMITS)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setIsolateOutputCommits(Boolean isolateOutputCommits) {
    this.isolateOutputCommits = isolateOutputCommits;
  }


  public DominoProvenanceApiProvenanceCheckpointDto attributes(Map attributes) {
    this.attributes = attributes;
    return this;
  }

  public DominoProvenanceApiProvenanceCheckpointDto putAttributesItem(String key, String attributesItem) {
    if (this.attributes == null) {
      this.attributes = new HashMap<>();
    }
    this.attributes.put(key, attributesItem);
    return this;
  }

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

  public Map getAttributes() {
    return attributes;
  }


  @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
  @JsonInclude(value = JsonInclude.Include.ALWAYS)
  public void setAttributes(Map attributes) {
    this.attributes = attributes;
  }


  /**
   * Return true if this domino.provenance.api.ProvenanceCheckpointDto object is equal to o.
   */
  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    DominoProvenanceApiProvenanceCheckpointDto dominoProvenanceApiProvenanceCheckpointDto = (DominoProvenanceApiProvenanceCheckpointDto) o;
    return Objects.equals(this.id, dominoProvenanceApiProvenanceCheckpointDto.id) &&
        Objects.equals(this.projectId, dominoProvenanceApiProvenanceCheckpointDto.projectId) &&
        Objects.equals(this.executionId, dominoProvenanceApiProvenanceCheckpointDto.executionId) &&
        Objects.equals(this.executionName, dominoProvenanceApiProvenanceCheckpointDto.executionName) &&
        Objects.equals(this.createdAt, dominoProvenanceApiProvenanceCheckpointDto.createdAt) &&
        Objects.equals(this.executionStart, dominoProvenanceApiProvenanceCheckpointDto.executionStart) &&
        Objects.equals(this.environmentDetails, dominoProvenanceApiProvenanceCheckpointDto.environmentDetails) &&
        Objects.equals(this.commitMessage, dominoProvenanceApiProvenanceCheckpointDto.commitMessage) &&
        Objects.equals(this.dfsCommit, dominoProvenanceApiProvenanceCheckpointDto.dfsCommit) &&
        Objects.equals(this.dfsBranch, dominoProvenanceApiProvenanceCheckpointDto.dfsBranch) &&
        Objects.equals(this.gitRepoCommits, dominoProvenanceApiProvenanceCheckpointDto.gitRepoCommits) &&
        Objects.equals(this.mainGitBranch, dominoProvenanceApiProvenanceCheckpointDto.mainGitBranch) &&
        Objects.equals(this.importedProjects, dominoProvenanceApiProvenanceCheckpointDto.importedProjects) &&
        Objects.equals(this.hardwareTierId, dominoProvenanceApiProvenanceCheckpointDto.hardwareTierId) &&
        Objects.equals(this.hardwareTierName, dominoProvenanceApiProvenanceCheckpointDto.hardwareTierName) &&
        Objects.equals(this.volumeSize, dominoProvenanceApiProvenanceCheckpointDto.volumeSize) &&
        Objects.equals(this.computeClusterConfig, dominoProvenanceApiProvenanceCheckpointDto.computeClusterConfig) &&
        Objects.equals(this.environmentVariables, dominoProvenanceApiProvenanceCheckpointDto.environmentVariables) &&
        Objects.equals(this.isolateOutputCommits, dominoProvenanceApiProvenanceCheckpointDto.isolateOutputCommits) &&
        Objects.equals(this.attributes, dominoProvenanceApiProvenanceCheckpointDto.attributes);
  }

  @Override
  public int hashCode() {
    return Objects.hash(id, projectId, executionId, executionName, createdAt, executionStart, environmentDetails, commitMessage, dfsCommit, dfsBranch, gitRepoCommits, mainGitBranch, importedProjects, hardwareTierId, hardwareTierName, volumeSize, computeClusterConfig, environmentVariables, isolateOutputCommits, attributes);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class DominoProvenanceApiProvenanceCheckpointDto {\n");
    sb.append("    id: ").append(toIndentedString(id)).append("\n");
    sb.append("    projectId: ").append(toIndentedString(projectId)).append("\n");
    sb.append("    executionId: ").append(toIndentedString(executionId)).append("\n");
    sb.append("    executionName: ").append(toIndentedString(executionName)).append("\n");
    sb.append("    createdAt: ").append(toIndentedString(createdAt)).append("\n");
    sb.append("    executionStart: ").append(toIndentedString(executionStart)).append("\n");
    sb.append("    environmentDetails: ").append(toIndentedString(environmentDetails)).append("\n");
    sb.append("    commitMessage: ").append(toIndentedString(commitMessage)).append("\n");
    sb.append("    dfsCommit: ").append(toIndentedString(dfsCommit)).append("\n");
    sb.append("    dfsBranch: ").append(toIndentedString(dfsBranch)).append("\n");
    sb.append("    gitRepoCommits: ").append(toIndentedString(gitRepoCommits)).append("\n");
    sb.append("    mainGitBranch: ").append(toIndentedString(mainGitBranch)).append("\n");
    sb.append("    importedProjects: ").append(toIndentedString(importedProjects)).append("\n");
    sb.append("    hardwareTierId: ").append(toIndentedString(hardwareTierId)).append("\n");
    sb.append("    hardwareTierName: ").append(toIndentedString(hardwareTierName)).append("\n");
    sb.append("    volumeSize: ").append(toIndentedString(volumeSize)).append("\n");
    sb.append("    computeClusterConfig: ").append(toIndentedString(computeClusterConfig)).append("\n");
    sb.append("    environmentVariables: ").append(toIndentedString(environmentVariables)).append("\n");
    sb.append("    isolateOutputCommits: ").append(toIndentedString(isolateOutputCommits)).append("\n");
    sb.append("    attributes: ").append(toIndentedString(attributes)).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 `id` to the URL query string
    if (getId() != null) {
      joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
    }

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

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

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

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

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

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

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

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

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

    // add `gitRepoCommits` to the URL query string
    if (getGitRepoCommits() != null) {
      for (int i = 0; i < getGitRepoCommits().size(); i++) {
        if (getGitRepoCommits().get(i) != null) {
          joiner.add(getGitRepoCommits().get(i).toUrlQueryString(String.format("%sgitRepoCommits%s%s", prefix, suffix,
          "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix))));
        }
      }
    }

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

    // add `importedProjects` to the URL query string
    if (getImportedProjects() != null) {
      for (int i = 0; i < getImportedProjects().size(); i++) {
        if (getImportedProjects().get(i) != null) {
          joiner.add(getImportedProjects().get(i).toUrlQueryString(String.format("%simportedProjects%s%s", prefix, suffix,
          "".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix))));
        }
      }
    }

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

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

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

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

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

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

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

    return joiner.toString();
  }
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy