001 002package com.commercetools.api.models.state; 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 * StateResourceIdentifierBuilder 013 * <hr> 014 * Example to create an instance using the builder pattern 015 * <div class=code-example> 016 * <pre><code class='java'> 017 * StateResourceIdentifier stateResourceIdentifier = StateResourceIdentifier.builder() 018 * .build() 019 * </code></pre> 020 * </div> 021 */ 022@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen") 023public class StateResourceIdentifierBuilder implements Builder<StateResourceIdentifier> { 024 025 @Nullable 026 private String id; 027 028 @Nullable 029 private String key; 030 031 /** 032 * <p>Unique identifier of the referenced State. Either <code>id</code> or <code>key</code> is required.</p> 033 * @param id value to be set 034 * @return Builder 035 */ 036 037 public StateResourceIdentifierBuilder id(@Nullable final String id) { 038 this.id = id; 039 return this; 040 } 041 042 /** 043 * <p>User-defined unique identifier of the referenced State. Either <code>id</code> or <code>key</code> is required.</p> 044 * @param key value to be set 045 * @return Builder 046 */ 047 048 public StateResourceIdentifierBuilder key(@Nullable final String key) { 049 this.key = key; 050 return this; 051 } 052 053 /** 054 * <p>Unique identifier of the referenced State. Either <code>id</code> or <code>key</code> is required.</p> 055 * @return id 056 */ 057 058 @Nullable 059 public String getId() { 060 return this.id; 061 } 062 063 /** 064 * <p>User-defined unique identifier of the referenced State. Either <code>id</code> or <code>key</code> is required.</p> 065 * @return key 066 */ 067 068 @Nullable 069 public String getKey() { 070 return this.key; 071 } 072 073 /** 074 * builds StateResourceIdentifier with checking for non-null required values 075 * @return StateResourceIdentifier 076 */ 077 public StateResourceIdentifier build() { 078 return new StateResourceIdentifierImpl(id, key); 079 } 080 081 /** 082 * builds StateResourceIdentifier without checking for non-null required values 083 * @return StateResourceIdentifier 084 */ 085 public StateResourceIdentifier buildUnchecked() { 086 return new StateResourceIdentifierImpl(id, key); 087 } 088 089 /** 090 * factory method for an instance of StateResourceIdentifierBuilder 091 * @return builder 092 */ 093 public static StateResourceIdentifierBuilder of() { 094 return new StateResourceIdentifierBuilder(); 095 } 096 097 /** 098 * create builder for StateResourceIdentifier instance 099 * @param template instance with prefilled values for the builder 100 * @return builder 101 */ 102 public static StateResourceIdentifierBuilder of(final StateResourceIdentifier template) { 103 StateResourceIdentifierBuilder builder = new StateResourceIdentifierBuilder(); 104 builder.id = template.getId(); 105 builder.key = template.getKey(); 106 return builder; 107 } 108 109}