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

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

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

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

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

Value before the change.

* @param builder function to build the previousValue value * @return Builder */ public SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder nextValue(final com.commercetools.history.models.common.Price 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 SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder 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 SetLineItemPriceChangeBuilder lineItem( final com.commercetools.history.models.common.LocalizedString lineItem) { this.lineItem = lineItem; 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; } /** *

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

* @return lineItem */ public com.commercetools.history.models.common.LocalizedString getLineItem() { return this.lineItem; } /** * builds SetLineItemPriceChange with checking for non-null required values * @return SetLineItemPriceChange */ public SetLineItemPriceChange build() { Objects.requireNonNull(change, SetLineItemPriceChange.class + ": change is missing"); Objects.requireNonNull(previousValue, SetLineItemPriceChange.class + ": previousValue is missing"); Objects.requireNonNull(nextValue, SetLineItemPriceChange.class + ": nextValue is missing"); Objects.requireNonNull(lineItem, SetLineItemPriceChange.class + ": lineItem is missing"); return new SetLineItemPriceChangeImpl(change, previousValue, nextValue, lineItem); } /** * builds SetLineItemPriceChange without checking for non-null required values * @return SetLineItemPriceChange */ public SetLineItemPriceChange buildUnchecked() { return new SetLineItemPriceChangeImpl(change, previousValue, nextValue, lineItem); } /** * factory method for an instance of SetLineItemPriceChangeBuilder * @return builder */ public static SetLineItemPriceChangeBuilder of() { return new SetLineItemPriceChangeBuilder(); } /** * create builder for SetLineItemPriceChange instance * @param template instance with prefilled values for the builder * @return builder */ public static SetLineItemPriceChangeBuilder of(final SetLineItemPriceChange template) { SetLineItemPriceChangeBuilder builder = new SetLineItemPriceChangeBuilder(); builder.change = template.getChange(); builder.previousValue = template.getPreviousValue(); builder.nextValue = template.getNextValue(); builder.lineItem = template.getLineItem(); return builder; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy