
com.dominodatalab.pub.model.NewDatasetRwV1 Maven / Gradle / Ivy
/*
* Domino Public API
* Domino Public API Endpoints
*
* The version of the OpenAPI document: 5.9.1
*
*
* 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.pub.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.pub.model.DatasetRwGrantV1;
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.List;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* NewDatasetRwV1
*/
@JsonPropertyOrder({
NewDatasetRwV1.JSON_PROPERTY_DESCRIPTION,
NewDatasetRwV1.JSON_PROPERTY_GRANTS,
NewDatasetRwV1.JSON_PROPERTY_NAME,
NewDatasetRwV1.JSON_PROPERTY_PROJECT_ID,
NewDatasetRwV1.JSON_PROPERTY_SNAPSHOT_ID
})
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2024-02-03T07:34:09.642933400-05:00[America/New_York]")
public class NewDatasetRwV1 {
public static final String JSON_PROPERTY_DESCRIPTION = "description";
private String description;
public static final String JSON_PROPERTY_GRANTS = "grants";
private List grants;
public static final String JSON_PROPERTY_NAME = "name";
private String name;
public static final String JSON_PROPERTY_PROJECT_ID = "projectId";
private String projectId;
public static final String JSON_PROPERTY_SNAPSHOT_ID = "snapshotId";
private String snapshotId;
public NewDatasetRwV1() {
}
public NewDatasetRwV1 description(String description) {
this.description = description;
return this;
}
/**
* Description of the dataset
* @return description
**/
@javax.annotation.Nullable
@JsonProperty(JSON_PROPERTY_DESCRIPTION)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDescription() {
return description;
}
@JsonProperty(JSON_PROPERTY_DESCRIPTION)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDescription(String description) {
this.description = description;
}
public NewDatasetRwV1 grants(List grants) {
this.grants = grants;
return this;
}
public NewDatasetRwV1 addGrantsItem(DatasetRwGrantV1 grantsItem) {
if (this.grants == null) {
this.grants = new ArrayList<>();
}
this.grants.add(grantsItem);
return this;
}
/**
* Permission grants to be assigned for this newly created dataset. Note that permissions can be edited after creation. If snapshotId is passed in, this parameter won't have any effect and caller will be assigned dataset Ownership.
* @return grants
**/
@javax.annotation.Nullable
@JsonProperty(JSON_PROPERTY_GRANTS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public List getGrants() {
return grants;
}
@JsonProperty(JSON_PROPERTY_GRANTS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setGrants(List grants) {
this.grants = grants;
}
public NewDatasetRwV1 name(String name) {
this.name = name;
return this;
}
/**
* Name of this dataset. The name must be unique in the same project
* @return name
**/
@javax.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_NAME)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public String getName() {
return name;
}
@JsonProperty(JSON_PROPERTY_NAME)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setName(String name) {
this.name = name;
}
public NewDatasetRwV1 projectId(String projectId) {
this.projectId = projectId;
return this;
}
/**
* ID of the project this dataset belongs to. Either projectId or snapshotId must be provided
* @return projectId
**/
@javax.annotation.Nullable
@JsonProperty(JSON_PROPERTY_PROJECT_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getProjectId() {
return projectId;
}
@JsonProperty(JSON_PROPERTY_PROJECT_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public NewDatasetRwV1 snapshotId(String snapshotId) {
this.snapshotId = snapshotId;
return this;
}
/**
* ID of an existing snapshot to create a new dataset from. Either snapshotId or projectId must be provided.
* @return snapshotId
**/
@javax.annotation.Nullable
@JsonProperty(JSON_PROPERTY_SNAPSHOT_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getSnapshotId() {
return snapshotId;
}
@JsonProperty(JSON_PROPERTY_SNAPSHOT_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setSnapshotId(String snapshotId) {
this.snapshotId = snapshotId;
}
/**
* Return true if this NewDatasetRwV1 object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
NewDatasetRwV1 newDatasetRwV1 = (NewDatasetRwV1) o;
return Objects.equals(this.description, newDatasetRwV1.description) &&
Objects.equals(this.grants, newDatasetRwV1.grants) &&
Objects.equals(this.name, newDatasetRwV1.name) &&
Objects.equals(this.projectId, newDatasetRwV1.projectId) &&
Objects.equals(this.snapshotId, newDatasetRwV1.snapshotId);
}
@Override
public int hashCode() {
return Objects.hash(description, grants, name, projectId, snapshotId);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class NewDatasetRwV1 {\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" grants: ").append(toIndentedString(grants)).append("\n");
sb.append(" name: ").append(toIndentedString(name)).append("\n");
sb.append(" projectId: ").append(toIndentedString(projectId)).append("\n");
sb.append(" snapshotId: ").append(toIndentedString(snapshotId)).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 `description` to the URL query string
if (getDescription() != null) {
joiner.add(String.format("%sdescription%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getDescription()), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
}
// add `grants` to the URL query string
if (getGrants() != null) {
for (int i = 0; i < getGrants().size(); i++) {
if (getGrants().get(i) != null) {
joiner.add(getGrants().get(i).toUrlQueryString(String.format("%sgrants%s%s", prefix, suffix,
"".equals(suffix) ? "" : String.format("%s%d%s", containerPrefix, i, containerSuffix))));
}
}
}
// add `name` to the URL query string
if (getName() != null) {
joiner.add(String.format("%sname%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getName()), 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 `snapshotId` to the URL query string
if (getSnapshotId() != null) {
joiner.add(String.format("%ssnapshotId%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getSnapshotId()), StandardCharsets.UTF_8).replaceAll("\\+", "%20")));
}
return joiner.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy