001 002package com.commercetools.api.models.shopping_list; 003 004import java.util.*; 005import java.util.function.Function; 006 007import javax.annotation.Nullable; 008 009import io.vrap.rmf.base.client.Builder; 010import io.vrap.rmf.base.client.utils.Generated; 011 012/** 013 * ShoppingListSetTextLineItemDescriptionActionBuilder 014 * <hr> 015 * Example to create an instance using the builder pattern 016 * <div class=code-example> 017 * <pre><code class='java'> 018 * ShoppingListSetTextLineItemDescriptionAction shoppingListSetTextLineItemDescriptionAction = ShoppingListSetTextLineItemDescriptionAction.builder() 019 * .textLineItemId("{textLineItemId}") 020 * .build() 021 * </code></pre> 022 * </div> 023 */ 024@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") 025public class ShoppingListSetTextLineItemDescriptionActionBuilder 026 implements Builder<ShoppingListSetTextLineItemDescriptionAction> { 027 028 private String textLineItemId; 029 030 @Nullable 031 private com.commercetools.api.models.common.LocalizedString description; 032 033 /** 034 * <p>The <code>id</code> of the TextLineItem to update.</p> 035 * @param textLineItemId value to be set 036 * @return Builder 037 */ 038 039 public ShoppingListSetTextLineItemDescriptionActionBuilder textLineItemId(final String textLineItemId) { 040 this.textLineItemId = textLineItemId; 041 return this; 042 } 043 044 /** 045 * <p>Value to set. If empty, any existing value will be removed.</p> 046 * @param builder function to build the description value 047 * @return Builder 048 */ 049 050 public ShoppingListSetTextLineItemDescriptionActionBuilder description( 051 Function<com.commercetools.api.models.common.LocalizedStringBuilder, com.commercetools.api.models.common.LocalizedStringBuilder> builder) { 052 this.description = builder.apply(com.commercetools.api.models.common.LocalizedStringBuilder.of()).build(); 053 return this; 054 } 055 056 /** 057 * <p>Value to set. If empty, any existing value will be removed.</p> 058 * @param builder function to build the description value 059 * @return Builder 060 */ 061 062 public ShoppingListSetTextLineItemDescriptionActionBuilder withDescription( 063 Function<com.commercetools.api.models.common.LocalizedStringBuilder, com.commercetools.api.models.common.LocalizedString> builder) { 064 this.description = builder.apply(com.commercetools.api.models.common.LocalizedStringBuilder.of()); 065 return this; 066 } 067 068 /** 069 * <p>Value to set. If empty, any existing value will be removed.</p> 070 * @param description value to be set 071 * @return Builder 072 */ 073 074 public ShoppingListSetTextLineItemDescriptionActionBuilder description( 075 @Nullable final com.commercetools.api.models.common.LocalizedString description) { 076 this.description = description; 077 return this; 078 } 079 080 /** 081 * <p>The <code>id</code> of the TextLineItem to update.</p> 082 * @return textLineItemId 083 */ 084 085 public String getTextLineItemId() { 086 return this.textLineItemId; 087 } 088 089 /** 090 * <p>Value to set. If empty, any existing value will be removed.</p> 091 * @return description 092 */ 093 094 @Nullable 095 public com.commercetools.api.models.common.LocalizedString getDescription() { 096 return this.description; 097 } 098 099 /** 100 * builds ShoppingListSetTextLineItemDescriptionAction with checking for non-null required values 101 * @return ShoppingListSetTextLineItemDescriptionAction 102 */ 103 public ShoppingListSetTextLineItemDescriptionAction build() { 104 Objects.requireNonNull(textLineItemId, 105 ShoppingListSetTextLineItemDescriptionAction.class + ": textLineItemId is missing"); 106 return new ShoppingListSetTextLineItemDescriptionActionImpl(textLineItemId, description); 107 } 108 109 /** 110 * builds ShoppingListSetTextLineItemDescriptionAction without checking for non-null required values 111 * @return ShoppingListSetTextLineItemDescriptionAction 112 */ 113 public ShoppingListSetTextLineItemDescriptionAction buildUnchecked() { 114 return new ShoppingListSetTextLineItemDescriptionActionImpl(textLineItemId, description); 115 } 116 117 /** 118 * factory method for an instance of ShoppingListSetTextLineItemDescriptionActionBuilder 119 * @return builder 120 */ 121 public static ShoppingListSetTextLineItemDescriptionActionBuilder of() { 122 return new ShoppingListSetTextLineItemDescriptionActionBuilder(); 123 } 124 125 /** 126 * create builder for ShoppingListSetTextLineItemDescriptionAction instance 127 * @param template instance with prefilled values for the builder 128 * @return builder 129 */ 130 public static ShoppingListSetTextLineItemDescriptionActionBuilder of( 131 final ShoppingListSetTextLineItemDescriptionAction template) { 132 ShoppingListSetTextLineItemDescriptionActionBuilder builder = new ShoppingListSetTextLineItemDescriptionActionBuilder(); 133 builder.textLineItemId = template.getTextLineItemId(); 134 builder.description = template.getDescription(); 135 return builder; 136 } 137 138}