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

com.commercetools.history.models.label.QuoteLabelBuilder Maven / Gradle / Ivy

There is a newer version: 17.15.1
Show newest version

package com.commercetools.history.models.label;

import java.util.*;
import java.util.function.Function;

import io.vrap.rmf.base.client.Builder;
import io.vrap.rmf.base.client.utils.Generated;

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

 *     QuoteLabel quoteLabel = QuoteLabel.builder()
 *             .key("{key}")
 *             .customer(customerBuilder -> customerBuilder)
 *             .stagedQuote(stagedQuoteBuilder -> stagedQuoteBuilder)
 *             .quoteRequest(quoteRequestBuilder -> quoteRequestBuilder)
 *             .build()
 * 
*
*/ @Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") public class QuoteLabelBuilder implements Builder { private String key; private com.commercetools.history.models.common.Reference customer; private com.commercetools.history.models.common.Reference stagedQuote; private com.commercetools.history.models.common.Reference quoteRequest; /** *

User-defined unique identifier of the Quote.

* @param key value to be set * @return Builder */ public QuoteLabelBuilder key(final String key) { this.key = key; return this; } /** *

The Buyer who requested the Quote.

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

The Buyer who requested the Quote.

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

The Buyer who requested the Quote.

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

Staged Quote related to the Quote.

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

Staged Quote related to the Quote.

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

Staged Quote related to the Quote.

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

Quote Request related to the Quote.

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

Quote Request related to the Quote.

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

Quote Request related to the Quote.

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

User-defined unique identifier of the Quote.

* @return key */ public String getKey() { return this.key; } /** *

The Buyer who requested the Quote.

* @return customer */ public com.commercetools.history.models.common.Reference getCustomer() { return this.customer; } /** *

Staged Quote related to the Quote.

* @return stagedQuote */ public com.commercetools.history.models.common.Reference getStagedQuote() { return this.stagedQuote; } /** *

Quote Request related to the Quote.

* @return quoteRequest */ public com.commercetools.history.models.common.Reference getQuoteRequest() { return this.quoteRequest; } /** * builds QuoteLabel with checking for non-null required values * @return QuoteLabel */ public QuoteLabel build() { Objects.requireNonNull(key, QuoteLabel.class + ": key is missing"); Objects.requireNonNull(customer, QuoteLabel.class + ": customer is missing"); Objects.requireNonNull(stagedQuote, QuoteLabel.class + ": stagedQuote is missing"); Objects.requireNonNull(quoteRequest, QuoteLabel.class + ": quoteRequest is missing"); return new QuoteLabelImpl(key, customer, stagedQuote, quoteRequest); } /** * builds QuoteLabel without checking for non-null required values * @return QuoteLabel */ public QuoteLabel buildUnchecked() { return new QuoteLabelImpl(key, customer, stagedQuote, quoteRequest); } /** * factory method for an instance of QuoteLabelBuilder * @return builder */ public static QuoteLabelBuilder of() { return new QuoteLabelBuilder(); } /** * create builder for QuoteLabel instance * @param template instance with prefilled values for the builder * @return builder */ public static QuoteLabelBuilder of(final QuoteLabel template) { QuoteLabelBuilder builder = new QuoteLabelBuilder(); builder.key = template.getKey(); builder.customer = template.getCustomer(); builder.stagedQuote = template.getStagedQuote(); builder.quoteRequest = template.getQuoteRequest(); return builder; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy