
com.squidex.api.resources.assets.requests.BulkUpdateAssetsDto Maven / Gradle / Ivy
package com.squidex.api.resources.assets.requests;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.squidex.api.types.BulkUpdateAssetsJobDto;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonDeserialize(builder = BulkUpdateAssetsDto.Builder.class)
public final class BulkUpdateAssetsDto {
private final Optional> jobs;
private final Optional checkReferrers;
private final Optional optimizeValidation;
private final Optional doNotScript;
private BulkUpdateAssetsDto(
Optional> jobs,
Optional checkReferrers,
Optional optimizeValidation,
Optional doNotScript) {
this.jobs = jobs;
this.checkReferrers = checkReferrers;
this.optimizeValidation = optimizeValidation;
this.doNotScript = doNotScript;
}
/**
* @return The contents to update or insert.
*/
@JsonProperty("jobs")
public Optional> getJobs() {
return jobs;
}
/**
* @return True to check referrers of deleted assets.
*/
@JsonProperty("checkReferrers")
public Optional getCheckReferrers() {
return checkReferrers;
}
/**
* @return True to turn off costly validation: Folder checks. Default: true.
*/
@JsonProperty("optimizeValidation")
public Optional getOptimizeValidation() {
return optimizeValidation;
}
/**
* @return True to turn off scripting for faster inserts. Default: true.
*/
@JsonProperty("doNotScript")
public Optional getDoNotScript() {
return doNotScript;
}
@Override
public boolean equals(Object other) {
if (this == other) return true;
return other instanceof BulkUpdateAssetsDto && equalTo((BulkUpdateAssetsDto) other);
}
private boolean equalTo(BulkUpdateAssetsDto other) {
return jobs.equals(other.jobs)
&& checkReferrers.equals(other.checkReferrers)
&& optimizeValidation.equals(other.optimizeValidation)
&& doNotScript.equals(other.doNotScript);
}
@Override
public int hashCode() {
return Objects.hash(this.jobs, this.checkReferrers, this.optimizeValidation, this.doNotScript);
}
@Override
public String toString() {
return "BulkUpdateAssetsDto{" + "jobs: " + jobs + ", checkReferrers: " + checkReferrers
+ ", optimizeValidation: " + optimizeValidation + ", doNotScript: " + doNotScript + "}";
}
public static Builder builder() {
return new Builder();
}
@JsonIgnoreProperties(ignoreUnknown = true)
public static final class Builder {
private Optional> jobs = Optional.empty();
private Optional checkReferrers = Optional.empty();
private Optional optimizeValidation = Optional.empty();
private Optional doNotScript = Optional.empty();
private Builder() {}
public Builder from(BulkUpdateAssetsDto other) {
jobs(other.getJobs());
checkReferrers(other.getCheckReferrers());
optimizeValidation(other.getOptimizeValidation());
doNotScript(other.getDoNotScript());
return this;
}
@JsonSetter(value = "jobs", nulls = Nulls.SKIP)
public Builder jobs(Optional> jobs) {
this.jobs = jobs;
return this;
}
public Builder jobs(List jobs) {
this.jobs = Optional.of(jobs);
return this;
}
@JsonSetter(value = "checkReferrers", nulls = Nulls.SKIP)
public Builder checkReferrers(Optional checkReferrers) {
this.checkReferrers = checkReferrers;
return this;
}
public Builder checkReferrers(Boolean checkReferrers) {
this.checkReferrers = Optional.of(checkReferrers);
return this;
}
@JsonSetter(value = "optimizeValidation", nulls = Nulls.SKIP)
public Builder optimizeValidation(Optional optimizeValidation) {
this.optimizeValidation = optimizeValidation;
return this;
}
public Builder optimizeValidation(Boolean optimizeValidation) {
this.optimizeValidation = Optional.of(optimizeValidation);
return this;
}
@JsonSetter(value = "doNotScript", nulls = Nulls.SKIP)
public Builder doNotScript(Optional doNotScript) {
this.doNotScript = doNotScript;
return this;
}
public Builder doNotScript(Boolean doNotScript) {
this.doNotScript = Optional.of(doNotScript);
return this;
}
public BulkUpdateAssetsDto build() {
return new BulkUpdateAssetsDto(jobs, checkReferrers, optimizeValidation, doNotScript);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy