com.commercetools.history.models.change.RemovePriceChangeBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of commercetools-sdk-java-history Show documentation
Show all versions of commercetools-sdk-java-history Show documentation
The e-commerce SDK from commercetools Composable Commerce for Java
package com.commercetools.history.models.change;
import java.util.*;
import java.util.function.Function;
import io.vrap.rmf.base.client.Builder;
import io.vrap.rmf.base.client.utils.Generated;
/**
* RemovePriceChangeBuilder
*
* Example to create an instance using the builder pattern
*
*
* RemovePriceChange removePriceChange = RemovePriceChange.builder()
* .change("{change}")
* .previousValue(previousValueBuilder -> previousValueBuilder)
* .nextValue(nextValueBuilder -> nextValueBuilder)
* .catalogData("{catalogData}")
* .priceId("{priceId}")
* .build()
*
*
*/
@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen")
public class RemovePriceChangeBuilder implements Builder {
private String change;
private com.commercetools.history.models.common.Price previousValue;
private com.commercetools.history.models.common.Price nextValue;
private String catalogData;
private String priceId;
/**
* set the value to the change
* @param change value to be set
* @return Builder
*/
public RemovePriceChangeBuilder change(final String change) {
this.change = change;
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public RemovePriceChangeBuilder previousValue(
Function builder) {
this.previousValue = builder.apply(com.commercetools.history.models.common.PriceBuilder.of()).build();
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public RemovePriceChangeBuilder withPreviousValue(
Function builder) {
this.previousValue = builder.apply(com.commercetools.history.models.common.PriceBuilder.of());
return this;
}
/**
* Value before the change.
* @param previousValue value to be set
* @return Builder
*/
public RemovePriceChangeBuilder previousValue(final com.commercetools.history.models.common.Price previousValue) {
this.previousValue = previousValue;
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public RemovePriceChangeBuilder nextValue(
Function builder) {
this.nextValue = builder.apply(com.commercetools.history.models.common.PriceBuilder.of()).build();
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public RemovePriceChangeBuilder withNextValue(
Function builder) {
this.nextValue = builder.apply(com.commercetools.history.models.common.PriceBuilder.of());
return this;
}
/**
* Value after the change.
* @param nextValue value to be set
* @return Builder
*/
public RemovePriceChangeBuilder nextValue(final com.commercetools.history.models.common.Price nextValue) {
this.nextValue = nextValue;
return this;
}
/**
*
* staged
, if the staged ProductCatalogData was updated.
* current
, if the current ProductCatalogData was updated.
*
* @param catalogData value to be set
* @return Builder
*/
public RemovePriceChangeBuilder catalogData(final String catalogData) {
this.catalogData = catalogData;
return this;
}
/**
* id
of the Embedded Price.
* @param priceId value to be set
* @return Builder
*/
public RemovePriceChangeBuilder priceId(final String priceId) {
this.priceId = priceId;
return this;
}
/**
* value of change}
* @return change
*/
public String getChange() {
return this.change;
}
/**
* Value before the change.
* @return previousValue
*/
public com.commercetools.history.models.common.Price getPreviousValue() {
return this.previousValue;
}
/**
* Value after the change.
* @return nextValue
*/
public com.commercetools.history.models.common.Price getNextValue() {
return this.nextValue;
}
/**
*
* staged
, if the staged ProductCatalogData was updated.
* current
, if the current ProductCatalogData was updated.
*
* @return catalogData
*/
public String getCatalogData() {
return this.catalogData;
}
/**
* id
of the Embedded Price.
* @return priceId
*/
public String getPriceId() {
return this.priceId;
}
/**
* builds RemovePriceChange with checking for non-null required values
* @return RemovePriceChange
*/
public RemovePriceChange build() {
Objects.requireNonNull(change, RemovePriceChange.class + ": change is missing");
Objects.requireNonNull(previousValue, RemovePriceChange.class + ": previousValue is missing");
Objects.requireNonNull(nextValue, RemovePriceChange.class + ": nextValue is missing");
Objects.requireNonNull(catalogData, RemovePriceChange.class + ": catalogData is missing");
Objects.requireNonNull(priceId, RemovePriceChange.class + ": priceId is missing");
return new RemovePriceChangeImpl(change, previousValue, nextValue, catalogData, priceId);
}
/**
* builds RemovePriceChange without checking for non-null required values
* @return RemovePriceChange
*/
public RemovePriceChange buildUnchecked() {
return new RemovePriceChangeImpl(change, previousValue, nextValue, catalogData, priceId);
}
/**
* factory method for an instance of RemovePriceChangeBuilder
* @return builder
*/
public static RemovePriceChangeBuilder of() {
return new RemovePriceChangeBuilder();
}
/**
* create builder for RemovePriceChange instance
* @param template instance with prefilled values for the builder
* @return builder
*/
public static RemovePriceChangeBuilder of(final RemovePriceChange template) {
RemovePriceChangeBuilder builder = new RemovePriceChangeBuilder();
builder.change = template.getChange();
builder.previousValue = template.getPreviousValue();
builder.nextValue = template.getNextValue();
builder.catalogData = template.getCatalogData();
builder.priceId = template.getPriceId();
return builder;
}
}