001 002package com.commercetools.api.models.shopping_list; 003 004import java.util.*; 005 006import javax.annotation.Nullable; 007 008import io.vrap.rmf.base.client.Builder; 009import io.vrap.rmf.base.client.utils.Generated; 010 011/** 012 * ShoppingListSetLineItemCustomFieldActionBuilder 013 * <hr> 014 * Example to create an instance using the builder pattern 015 * <div class=code-example> 016 * <pre><code class='java'> 017 * ShoppingListSetLineItemCustomFieldAction shoppingListSetLineItemCustomFieldAction = ShoppingListSetLineItemCustomFieldAction.builder() 018 * .lineItemId("{lineItemId}") 019 * .name("{name}") 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 ShoppingListSetLineItemCustomFieldActionBuilder 026 implements Builder<ShoppingListSetLineItemCustomFieldAction> { 027 028 private String lineItemId; 029 030 private String name; 031 032 @Nullable 033 private java.lang.Object value; 034 035 /** 036 * <p>The <code>id</code> of the ShoppingListLineItem to update.</p> 037 * @param lineItemId value to be set 038 * @return Builder 039 */ 040 041 public ShoppingListSetLineItemCustomFieldActionBuilder lineItemId(final String lineItemId) { 042 this.lineItemId = lineItemId; 043 return this; 044 } 045 046 /** 047 * <p>Name of the Custom Field.</p> 048 * @param name value to be set 049 * @return Builder 050 */ 051 052 public ShoppingListSetLineItemCustomFieldActionBuilder name(final String name) { 053 this.name = name; 054 return this; 055 } 056 057 /** 058 * <p>If <code>value</code> is absent or <code>null</code>, this field will be removed if it exists. Removing a field that does not exist returns an InvalidOperation error. If <code>value</code> is provided, it is set for the field defined by <code>name</code>.</p> 059 * @param value value to be set 060 * @return Builder 061 */ 062 063 public ShoppingListSetLineItemCustomFieldActionBuilder value(@Nullable final java.lang.Object value) { 064 this.value = value; 065 return this; 066 } 067 068 /** 069 * <p>The <code>id</code> of the ShoppingListLineItem to update.</p> 070 * @return lineItemId 071 */ 072 073 public String getLineItemId() { 074 return this.lineItemId; 075 } 076 077 /** 078 * <p>Name of the Custom Field.</p> 079 * @return name 080 */ 081 082 public String getName() { 083 return this.name; 084 } 085 086 /** 087 * <p>If <code>value</code> is absent or <code>null</code>, this field will be removed if it exists. Removing a field that does not exist returns an InvalidOperation error. If <code>value</code> is provided, it is set for the field defined by <code>name</code>.</p> 088 * @return value 089 */ 090 091 @Nullable 092 public java.lang.Object getValue() { 093 return this.value; 094 } 095 096 /** 097 * builds ShoppingListSetLineItemCustomFieldAction with checking for non-null required values 098 * @return ShoppingListSetLineItemCustomFieldAction 099 */ 100 public ShoppingListSetLineItemCustomFieldAction build() { 101 Objects.requireNonNull(lineItemId, ShoppingListSetLineItemCustomFieldAction.class + ": lineItemId is missing"); 102 Objects.requireNonNull(name, ShoppingListSetLineItemCustomFieldAction.class + ": name is missing"); 103 return new ShoppingListSetLineItemCustomFieldActionImpl(lineItemId, name, value); 104 } 105 106 /** 107 * builds ShoppingListSetLineItemCustomFieldAction without checking for non-null required values 108 * @return ShoppingListSetLineItemCustomFieldAction 109 */ 110 public ShoppingListSetLineItemCustomFieldAction buildUnchecked() { 111 return new ShoppingListSetLineItemCustomFieldActionImpl(lineItemId, name, value); 112 } 113 114 /** 115 * factory method for an instance of ShoppingListSetLineItemCustomFieldActionBuilder 116 * @return builder 117 */ 118 public static ShoppingListSetLineItemCustomFieldActionBuilder of() { 119 return new ShoppingListSetLineItemCustomFieldActionBuilder(); 120 } 121 122 /** 123 * create builder for ShoppingListSetLineItemCustomFieldAction instance 124 * @param template instance with prefilled values for the builder 125 * @return builder 126 */ 127 public static ShoppingListSetLineItemCustomFieldActionBuilder of( 128 final ShoppingListSetLineItemCustomFieldAction template) { 129 ShoppingListSetLineItemCustomFieldActionBuilder builder = new ShoppingListSetLineItemCustomFieldActionBuilder(); 130 builder.lineItemId = template.getLineItemId(); 131 builder.name = template.getName(); 132 builder.value = template.getValue(); 133 return builder; 134 } 135 136}