com.commercetools.history.models.change.RemoveFromCategoryChangeBuilder 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;
/**
* RemoveFromCategoryChangeBuilder
*
* Example to create an instance using the builder pattern
*
*
* RemoveFromCategoryChange removeFromCategoryChange = RemoveFromCategoryChange.builder()
* .change("{change}")
* .plusPreviousValue(previousValueBuilder -> previousValueBuilder)
* .plusNextValue(nextValueBuilder -> nextValueBuilder)
* .category(categoryBuilder -> categoryBuilder)
* .build()
*
*
*/
@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen")
public class RemoveFromCategoryChangeBuilder implements Builder {
private String change;
private java.util.List previousValue;
private java.util.List nextValue;
private com.commercetools.history.models.common.Reference category;
/**
* set the value to the change
* @param change value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder change(final String change) {
this.change = change;
return this;
}
/**
* Value before the change.
* @param previousValue value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder previousValue(
final com.commercetools.history.models.common.Reference... previousValue) {
this.previousValue = new ArrayList<>(Arrays.asList(previousValue));
return this;
}
/**
* Value before the change.
* @param previousValue value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder previousValue(
final java.util.List previousValue) {
this.previousValue = previousValue;
return this;
}
/**
* Value before the change.
* @param previousValue value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder plusPreviousValue(
final com.commercetools.history.models.common.Reference... previousValue) {
if (this.previousValue == null) {
this.previousValue = new ArrayList<>();
}
this.previousValue.addAll(Arrays.asList(previousValue));
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder plusPreviousValue(
Function builder) {
if (this.previousValue == null) {
this.previousValue = new ArrayList<>();
}
this.previousValue.add(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()).build());
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder withPreviousValue(
Function builder) {
this.previousValue = new ArrayList<>();
this.previousValue.add(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()).build());
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder addPreviousValue(
Function builder) {
return plusPreviousValue(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()));
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder setPreviousValue(
Function builder) {
return previousValue(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()));
}
/**
* Value after the change.
* @param nextValue value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder nextValue(
final com.commercetools.history.models.common.Reference... nextValue) {
this.nextValue = new ArrayList<>(Arrays.asList(nextValue));
return this;
}
/**
* Value after the change.
* @param nextValue value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder nextValue(
final java.util.List nextValue) {
this.nextValue = nextValue;
return this;
}
/**
* Value after the change.
* @param nextValue value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder plusNextValue(
final com.commercetools.history.models.common.Reference... nextValue) {
if (this.nextValue == null) {
this.nextValue = new ArrayList<>();
}
this.nextValue.addAll(Arrays.asList(nextValue));
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder plusNextValue(
Function builder) {
if (this.nextValue == null) {
this.nextValue = new ArrayList<>();
}
this.nextValue.add(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()).build());
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder withNextValue(
Function builder) {
this.nextValue = new ArrayList<>();
this.nextValue.add(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()).build());
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder addNextValue(
Function builder) {
return plusNextValue(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()));
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder setNextValue(
Function builder) {
return nextValue(builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()));
}
/**
* Category from which the Product was removed.
* @param builder function to build the category value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder category(
Function builder) {
this.category = builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of()).build();
return this;
}
/**
* Category from which the Product was removed.
* @param builder function to build the category value
* @return Builder
*/
public RemoveFromCategoryChangeBuilder withCategory(
Function builder) {
this.category = builder.apply(com.commercetools.history.models.common.ReferenceBuilder.of());
return this;
}
/**
* Category from which the Product was removed.
* @param category value to be set
* @return Builder
*/
public RemoveFromCategoryChangeBuilder category(final com.commercetools.history.models.common.Reference category) {
this.category = category;
return this;
}
/**
* value of change}
* @return change
*/
public String getChange() {
return this.change;
}
/**
* Value before the change.
* @return previousValue
*/
public java.util.List getPreviousValue() {
return this.previousValue;
}
/**
* Value after the change.
* @return nextValue
*/
public java.util.List getNextValue() {
return this.nextValue;
}
/**
* Category from which the Product was removed.
* @return category
*/
public com.commercetools.history.models.common.Reference getCategory() {
return this.category;
}
/**
* builds RemoveFromCategoryChange with checking for non-null required values
* @return RemoveFromCategoryChange
*/
public RemoveFromCategoryChange build() {
Objects.requireNonNull(change, RemoveFromCategoryChange.class + ": change is missing");
Objects.requireNonNull(previousValue, RemoveFromCategoryChange.class + ": previousValue is missing");
Objects.requireNonNull(nextValue, RemoveFromCategoryChange.class + ": nextValue is missing");
Objects.requireNonNull(category, RemoveFromCategoryChange.class + ": category is missing");
return new RemoveFromCategoryChangeImpl(change, previousValue, nextValue, category);
}
/**
* builds RemoveFromCategoryChange without checking for non-null required values
* @return RemoveFromCategoryChange
*/
public RemoveFromCategoryChange buildUnchecked() {
return new RemoveFromCategoryChangeImpl(change, previousValue, nextValue, category);
}
/**
* factory method for an instance of RemoveFromCategoryChangeBuilder
* @return builder
*/
public static RemoveFromCategoryChangeBuilder of() {
return new RemoveFromCategoryChangeBuilder();
}
/**
* create builder for RemoveFromCategoryChange instance
* @param template instance with prefilled values for the builder
* @return builder
*/
public static RemoveFromCategoryChangeBuilder of(final RemoveFromCategoryChange template) {
RemoveFromCategoryChangeBuilder builder = new RemoveFromCategoryChangeBuilder();
builder.change = template.getChange();
builder.previousValue = template.getPreviousValue();
builder.nextValue = template.getNextValue();
builder.category = template.getCategory();
return builder;
}
}