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

com.commercetools.history.models.change.AddExternalImageChangeBuilder 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;

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

 *     AddExternalImageChange addExternalImageChange = AddExternalImageChange.builder()
 *             .change("{change}")
 *             .plusPreviousValue(previousValueBuilder -> previousValueBuilder)
 *             .plusNextValue(nextValueBuilder -> nextValueBuilder)
 *             .catalogData("{catalogData}")
 *             .build()
 * 
*
*/ @Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") public class AddExternalImageChangeBuilder implements Builder { private String change; private java.util.List previousValue; private java.util.List nextValue; private String catalogData; /** * set the value to the change * @param change value to be set * @return Builder */ public AddExternalImageChangeBuilder change(final String change) { this.change = change; return this; } /** *

Value before the change.

* @param previousValue value to be set * @return Builder */ public AddExternalImageChangeBuilder previousValue( final com.commercetools.history.models.common.Image... previousValue) { this.previousValue = new ArrayList<>(Arrays.asList(previousValue)); return this; } /** *

Value before the change.

* @param previousValue value to be set * @return Builder */ public AddExternalImageChangeBuilder previousValue( final java.util.List previousValue) { this.previousValue = previousValue; return this; } /** *

Value before the change.

* @param previousValue value to be set * @return Builder */ public AddExternalImageChangeBuilder plusPreviousValue( final com.commercetools.history.models.common.Image... 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 AddExternalImageChangeBuilder plusPreviousValue( Function builder) { if (this.previousValue == null) { this.previousValue = new ArrayList<>(); } this.previousValue.add(builder.apply(com.commercetools.history.models.common.ImageBuilder.of()).build()); return this; } /** *

Value before the change.

* @param builder function to build the previousValue value * @return Builder */ public AddExternalImageChangeBuilder withPreviousValue( Function builder) { this.previousValue = new ArrayList<>(); this.previousValue.add(builder.apply(com.commercetools.history.models.common.ImageBuilder.of()).build()); return this; } /** *

Value before the change.

* @param builder function to build the previousValue value * @return Builder */ public AddExternalImageChangeBuilder addPreviousValue( Function builder) { return plusPreviousValue(builder.apply(com.commercetools.history.models.common.ImageBuilder.of())); } /** *

Value before the change.

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

Value after the change.

* @param nextValue value to be set * @return Builder */ public AddExternalImageChangeBuilder nextValue(final com.commercetools.history.models.common.Image... nextValue) { this.nextValue = new ArrayList<>(Arrays.asList(nextValue)); return this; } /** *

Value after the change.

* @param nextValue value to be set * @return Builder */ public AddExternalImageChangeBuilder nextValue( final java.util.List nextValue) { this.nextValue = nextValue; return this; } /** *

Value after the change.

* @param nextValue value to be set * @return Builder */ public AddExternalImageChangeBuilder plusNextValue( final com.commercetools.history.models.common.Image... 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 AddExternalImageChangeBuilder plusNextValue( Function builder) { if (this.nextValue == null) { this.nextValue = new ArrayList<>(); } this.nextValue.add(builder.apply(com.commercetools.history.models.common.ImageBuilder.of()).build()); return this; } /** *

Value after the change.

* @param builder function to build the nextValue value * @return Builder */ public AddExternalImageChangeBuilder withNextValue( Function builder) { this.nextValue = new ArrayList<>(); this.nextValue.add(builder.apply(com.commercetools.history.models.common.ImageBuilder.of()).build()); return this; } /** *

Value after the change.

* @param builder function to build the nextValue value * @return Builder */ public AddExternalImageChangeBuilder addNextValue( Function builder) { return plusNextValue(builder.apply(com.commercetools.history.models.common.ImageBuilder.of())); } /** *

Value after the change.

* @param builder function to build the nextValue value * @return Builder */ public AddExternalImageChangeBuilder setNextValue( Function builder) { return nextValue(builder.apply(com.commercetools.history.models.common.ImageBuilder.of())); } /** *
    *
  • staged, if the staged ProductCatalogData was updated.
  • *
  • current, if the current ProductCatalogData was updated.
  • *
* @param catalogData value to be set * @return Builder */ public AddExternalImageChangeBuilder catalogData(final String catalogData) { this.catalogData = catalogData; 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; } /** *
    *
  • staged, if the staged ProductCatalogData was updated.
  • *
  • current, if the current ProductCatalogData was updated.
  • *
* @return catalogData */ public String getCatalogData() { return this.catalogData; } /** * builds AddExternalImageChange with checking for non-null required values * @return AddExternalImageChange */ public AddExternalImageChange build() { Objects.requireNonNull(change, AddExternalImageChange.class + ": change is missing"); Objects.requireNonNull(previousValue, AddExternalImageChange.class + ": previousValue is missing"); Objects.requireNonNull(nextValue, AddExternalImageChange.class + ": nextValue is missing"); Objects.requireNonNull(catalogData, AddExternalImageChange.class + ": catalogData is missing"); return new AddExternalImageChangeImpl(change, previousValue, nextValue, catalogData); } /** * builds AddExternalImageChange without checking for non-null required values * @return AddExternalImageChange */ public AddExternalImageChange buildUnchecked() { return new AddExternalImageChangeImpl(change, previousValue, nextValue, catalogData); } /** * factory method for an instance of AddExternalImageChangeBuilder * @return builder */ public static AddExternalImageChangeBuilder of() { return new AddExternalImageChangeBuilder(); } /** * create builder for AddExternalImageChange instance * @param template instance with prefilled values for the builder * @return builder */ public static AddExternalImageChangeBuilder of(final AddExternalImageChange template) { AddExternalImageChangeBuilder builder = new AddExternalImageChangeBuilder(); builder.change = template.getChange(); builder.previousValue = template.getPreviousValue(); builder.nextValue = template.getNextValue(); builder.catalogData = template.getCatalogData(); return builder; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy