com.commercetools.history.models.change.ChangeLocalizedEnumValueLabelChangeBuilder 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;
/**
* ChangeLocalizedEnumValueLabelChangeBuilder
*
* Example to create an instance using the builder pattern
*
*
* ChangeLocalizedEnumValueLabelChange changeLocalizedEnumValueLabelChange = ChangeLocalizedEnumValueLabelChange.builder()
* .change("{change}")
* .previousValue(previousValueBuilder -> previousValueBuilder)
* .nextValue(nextValueBuilder -> nextValueBuilder)
* .fieldName("{fieldName}")
* .attributeName("{attributeName}")
* .valueKey("{valueKey}")
* .build()
*
*
*/
@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen")
public class ChangeLocalizedEnumValueLabelChangeBuilder implements Builder {
private String change;
private com.commercetools.history.models.common.LocalizedString previousValue;
private com.commercetools.history.models.common.LocalizedString nextValue;
private String fieldName;
private String attributeName;
private String valueKey;
/**
* set the value to the change
* @param change value to be set
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder change(final String change) {
this.change = change;
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder previousValue(
Function builder) {
this.previousValue = builder.apply(com.commercetools.history.models.common.LocalizedStringBuilder.of()).build();
return this;
}
/**
* Value before the change.
* @param builder function to build the previousValue value
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder withPreviousValue(
Function builder) {
this.previousValue = builder.apply(com.commercetools.history.models.common.LocalizedStringBuilder.of());
return this;
}
/**
* Value before the change.
* @param previousValue value to be set
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder previousValue(
final com.commercetools.history.models.common.LocalizedString previousValue) {
this.previousValue = previousValue;
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder nextValue(
Function builder) {
this.nextValue = builder.apply(com.commercetools.history.models.common.LocalizedStringBuilder.of()).build();
return this;
}
/**
* Value after the change.
* @param builder function to build the nextValue value
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder withNextValue(
Function builder) {
this.nextValue = builder.apply(com.commercetools.history.models.common.LocalizedStringBuilder.of());
return this;
}
/**
* Value after the change.
* @param nextValue value to be set
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder nextValue(
final com.commercetools.history.models.common.LocalizedString nextValue) {
this.nextValue = nextValue;
return this;
}
/**
* Name of the updated FieldDefinition; only present on changes to Types.
* @param fieldName value to be set
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder fieldName(final String fieldName) {
this.fieldName = fieldName;
return this;
}
/**
* Name of the updated AttributeDefinition; only present on changes to Product Types.
* @param attributeName value to be set
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder attributeName(final String attributeName) {
this.attributeName = attributeName;
return this;
}
/**
* Key of the updated values.
* @param valueKey value to be set
* @return Builder
*/
public ChangeLocalizedEnumValueLabelChangeBuilder valueKey(final String valueKey) {
this.valueKey = valueKey;
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.LocalizedString getPreviousValue() {
return this.previousValue;
}
/**
* Value after the change.
* @return nextValue
*/
public com.commercetools.history.models.common.LocalizedString getNextValue() {
return this.nextValue;
}
/**
* Name of the updated FieldDefinition; only present on changes to Types.
* @return fieldName
*/
public String getFieldName() {
return this.fieldName;
}
/**
* Name of the updated AttributeDefinition; only present on changes to Product Types.
* @return attributeName
*/
public String getAttributeName() {
return this.attributeName;
}
/**
* Key of the updated values.
* @return valueKey
*/
public String getValueKey() {
return this.valueKey;
}
/**
* builds ChangeLocalizedEnumValueLabelChange with checking for non-null required values
* @return ChangeLocalizedEnumValueLabelChange
*/
public ChangeLocalizedEnumValueLabelChange build() {
Objects.requireNonNull(change, ChangeLocalizedEnumValueLabelChange.class + ": change is missing");
Objects.requireNonNull(previousValue, ChangeLocalizedEnumValueLabelChange.class + ": previousValue is missing");
Objects.requireNonNull(nextValue, ChangeLocalizedEnumValueLabelChange.class + ": nextValue is missing");
Objects.requireNonNull(fieldName, ChangeLocalizedEnumValueLabelChange.class + ": fieldName is missing");
Objects.requireNonNull(attributeName, ChangeLocalizedEnumValueLabelChange.class + ": attributeName is missing");
Objects.requireNonNull(valueKey, ChangeLocalizedEnumValueLabelChange.class + ": valueKey is missing");
return new ChangeLocalizedEnumValueLabelChangeImpl(change, previousValue, nextValue, fieldName, attributeName,
valueKey);
}
/**
* builds ChangeLocalizedEnumValueLabelChange without checking for non-null required values
* @return ChangeLocalizedEnumValueLabelChange
*/
public ChangeLocalizedEnumValueLabelChange buildUnchecked() {
return new ChangeLocalizedEnumValueLabelChangeImpl(change, previousValue, nextValue, fieldName, attributeName,
valueKey);
}
/**
* factory method for an instance of ChangeLocalizedEnumValueLabelChangeBuilder
* @return builder
*/
public static ChangeLocalizedEnumValueLabelChangeBuilder of() {
return new ChangeLocalizedEnumValueLabelChangeBuilder();
}
/**
* create builder for ChangeLocalizedEnumValueLabelChange instance
* @param template instance with prefilled values for the builder
* @return builder
*/
public static ChangeLocalizedEnumValueLabelChangeBuilder of(final ChangeLocalizedEnumValueLabelChange template) {
ChangeLocalizedEnumValueLabelChangeBuilder builder = new ChangeLocalizedEnumValueLabelChangeBuilder();
builder.change = template.getChange();
builder.previousValue = template.getPreviousValue();
builder.nextValue = template.getNextValue();
builder.fieldName = template.getFieldName();
builder.attributeName = template.getAttributeName();
builder.valueKey = template.getValueKey();
return builder;
}
}