All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.commercetools.history.models.change.SetOrderLineItemCustomTypeChangeBuilder Maven / Gradle / Ivy

There is a newer version: 17.11.0
Show newest version

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;

/**
 * SetOrderLineItemCustomTypeChangeBuilder
 * 
* Example to create an instance using the builder pattern *
*

 *     SetOrderLineItemCustomTypeChange setOrderLineItemCustomTypeChange = SetOrderLineItemCustomTypeChange.builder()
 *             .change("{change}")
 *             .previousValue(previousValueBuilder -> previousValueBuilder)
 *             .nextValue(nextValueBuilder -> nextValueBuilder)
 *             .lineItem(lineItemBuilder -> lineItemBuilder)
 *             .variant("{variant}")
 *             .build()
 * 
*
*/ @Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") public class SetOrderLineItemCustomTypeChangeBuilder implements Builder { private String change; private com.commercetools.history.models.common.CustomFields previousValue; private com.commercetools.history.models.common.CustomFields nextValue; private com.commercetools.history.models.common.LocalizedString lineItem; private String variant; /** * set the value to the change * @param change value to be set * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder change(final String change) { this.change = change; return this; } /** *

Value before the change.

* @param builder function to build the previousValue value * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder previousValue( Function builder) { this.previousValue = builder.apply(com.commercetools.history.models.common.CustomFieldsBuilder.of()).build(); return this; } /** *

Value before the change.

* @param builder function to build the previousValue value * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder withPreviousValue( Function builder) { this.previousValue = builder.apply(com.commercetools.history.models.common.CustomFieldsBuilder.of()); return this; } /** *

Value before the change.

* @param previousValue value to be set * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder previousValue( final com.commercetools.history.models.common.CustomFields previousValue) { this.previousValue = previousValue; return this; } /** *

Value after the change.

* @param builder function to build the nextValue value * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder nextValue( Function builder) { this.nextValue = builder.apply(com.commercetools.history.models.common.CustomFieldsBuilder.of()).build(); return this; } /** *

Value after the change.

* @param builder function to build the nextValue value * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder withNextValue( Function builder) { this.nextValue = builder.apply(com.commercetools.history.models.common.CustomFieldsBuilder.of()); return this; } /** *

Value after the change.

* @param nextValue value to be set * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder nextValue( final com.commercetools.history.models.common.CustomFields nextValue) { this.nextValue = nextValue; return this; } /** *

Name of the Product the updated Line Item is based on.

* @param builder function to build the lineItem value * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder lineItem( Function builder) { this.lineItem = builder.apply(com.commercetools.history.models.common.LocalizedStringBuilder.of()).build(); return this; } /** *

Name of the Product the updated Line Item is based on.

* @param builder function to build the lineItem value * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder withLineItem( Function builder) { this.lineItem = builder.apply(com.commercetools.history.models.common.LocalizedStringBuilder.of()); return this; } /** *

Name of the Product the updated Line Item is based on.

* @param lineItem value to be set * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder lineItem( final com.commercetools.history.models.common.LocalizedString lineItem) { this.lineItem = lineItem; return this; } /** *

sku or key of the ProductVariant.

* @param variant value to be set * @return Builder */ public SetOrderLineItemCustomTypeChangeBuilder variant(final String variant) { this.variant = variant; 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.CustomFields getPreviousValue() { return this.previousValue; } /** *

Value after the change.

* @return nextValue */ public com.commercetools.history.models.common.CustomFields getNextValue() { return this.nextValue; } /** *

Name of the Product the updated Line Item is based on.

* @return lineItem */ public com.commercetools.history.models.common.LocalizedString getLineItem() { return this.lineItem; } /** *

sku or key of the ProductVariant.

* @return variant */ public String getVariant() { return this.variant; } /** * builds SetOrderLineItemCustomTypeChange with checking for non-null required values * @return SetOrderLineItemCustomTypeChange */ public SetOrderLineItemCustomTypeChange build() { Objects.requireNonNull(change, SetOrderLineItemCustomTypeChange.class + ": change is missing"); Objects.requireNonNull(previousValue, SetOrderLineItemCustomTypeChange.class + ": previousValue is missing"); Objects.requireNonNull(nextValue, SetOrderLineItemCustomTypeChange.class + ": nextValue is missing"); Objects.requireNonNull(lineItem, SetOrderLineItemCustomTypeChange.class + ": lineItem is missing"); Objects.requireNonNull(variant, SetOrderLineItemCustomTypeChange.class + ": variant is missing"); return new SetOrderLineItemCustomTypeChangeImpl(change, previousValue, nextValue, lineItem, variant); } /** * builds SetOrderLineItemCustomTypeChange without checking for non-null required values * @return SetOrderLineItemCustomTypeChange */ public SetOrderLineItemCustomTypeChange buildUnchecked() { return new SetOrderLineItemCustomTypeChangeImpl(change, previousValue, nextValue, lineItem, variant); } /** * factory method for an instance of SetOrderLineItemCustomTypeChangeBuilder * @return builder */ public static SetOrderLineItemCustomTypeChangeBuilder of() { return new SetOrderLineItemCustomTypeChangeBuilder(); } /** * create builder for SetOrderLineItemCustomTypeChange instance * @param template instance with prefilled values for the builder * @return builder */ public static SetOrderLineItemCustomTypeChangeBuilder of(final SetOrderLineItemCustomTypeChange template) { SetOrderLineItemCustomTypeChangeBuilder builder = new SetOrderLineItemCustomTypeChangeBuilder(); builder.change = template.getChange(); builder.previousValue = template.getPreviousValue(); builder.nextValue = template.getNextValue(); builder.lineItem = template.getLineItem(); builder.variant = template.getVariant(); return builder; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy