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

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

There is a newer version: 17.12.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;

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

 *     SetLineItemDiscountedPricePerQuantityChange setLineItemDiscountedPricePerQuantityChange = SetLineItemDiscountedPricePerQuantityChange.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 SetLineItemDiscountedPricePerQuantityChangeBuilder implements Builder { private String change; private com.commercetools.history.models.common.DiscountedLineItemPriceForQuantity previousValue; private com.commercetools.history.models.common.DiscountedLineItemPriceForQuantity 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 SetLineItemDiscountedPricePerQuantityChangeBuilder change(final String change) { this.change = change; return this; } /** *

Value before the change.

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

Value before the change.

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

Value before the change.

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

Value after the change.

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

Value after the change.

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

Value after the change.

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

Name of the Product the Line Item is based on.

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

Name of the Product the Line Item is based on.

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

Name of the Product the Line Item is based on.

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

sku or key of the updated ProductVariant.

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

Value after the change.

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

Name of the Product the Line Item is based on.

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

sku or key of the updated ProductVariant.

* @return variant */ public String getVariant() { return this.variant; } /** * builds SetLineItemDiscountedPricePerQuantityChange with checking for non-null required values * @return SetLineItemDiscountedPricePerQuantityChange */ public SetLineItemDiscountedPricePerQuantityChange build() { Objects.requireNonNull(change, SetLineItemDiscountedPricePerQuantityChange.class + ": change is missing"); Objects.requireNonNull(previousValue, SetLineItemDiscountedPricePerQuantityChange.class + ": previousValue is missing"); Objects.requireNonNull(nextValue, SetLineItemDiscountedPricePerQuantityChange.class + ": nextValue is missing"); Objects.requireNonNull(lineItem, SetLineItemDiscountedPricePerQuantityChange.class + ": lineItem is missing"); Objects.requireNonNull(variant, SetLineItemDiscountedPricePerQuantityChange.class + ": variant is missing"); return new SetLineItemDiscountedPricePerQuantityChangeImpl(change, previousValue, nextValue, lineItem, variant); } /** * builds SetLineItemDiscountedPricePerQuantityChange without checking for non-null required values * @return SetLineItemDiscountedPricePerQuantityChange */ public SetLineItemDiscountedPricePerQuantityChange buildUnchecked() { return new SetLineItemDiscountedPricePerQuantityChangeImpl(change, previousValue, nextValue, lineItem, variant); } /** * factory method for an instance of SetLineItemDiscountedPricePerQuantityChangeBuilder * @return builder */ public static SetLineItemDiscountedPricePerQuantityChangeBuilder of() { return new SetLineItemDiscountedPricePerQuantityChangeBuilder(); } /** * create builder for SetLineItemDiscountedPricePerQuantityChange instance * @param template instance with prefilled values for the builder * @return builder */ public static SetLineItemDiscountedPricePerQuantityChangeBuilder of( final SetLineItemDiscountedPricePerQuantityChange template) { SetLineItemDiscountedPricePerQuantityChangeBuilder builder = new SetLineItemDiscountedPricePerQuantityChangeBuilder(); 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