001 002package com.commercetools.history.models.common; 003 004import java.util.*; 005 006import io.vrap.rmf.base.client.Builder; 007import io.vrap.rmf.base.client.utils.Generated; 008 009/** 010 * ParcelMeasurementsBuilder 011 * <hr> 012 * Example to create an instance using the builder pattern 013 * <div class=code-example> 014 * <pre><code class='java'> 015 * ParcelMeasurements parcelMeasurements = ParcelMeasurements.builder() 016 * .heightInMillimeter(1) 017 * .lengthInMillimeter(1) 018 * .widthInMillimeter(1) 019 * .weightInGram(1) 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 ParcelMeasurementsBuilder implements Builder<ParcelMeasurements> { 026 027 private Integer heightInMillimeter; 028 029 private Integer lengthInMillimeter; 030 031 private Integer widthInMillimeter; 032 033 private Integer weightInGram; 034 035 /** 036 * set the value to the heightInMillimeter 037 * @param heightInMillimeter value to be set 038 * @return Builder 039 */ 040 041 public ParcelMeasurementsBuilder heightInMillimeter(final Integer heightInMillimeter) { 042 this.heightInMillimeter = heightInMillimeter; 043 return this; 044 } 045 046 /** 047 * set the value to the lengthInMillimeter 048 * @param lengthInMillimeter value to be set 049 * @return Builder 050 */ 051 052 public ParcelMeasurementsBuilder lengthInMillimeter(final Integer lengthInMillimeter) { 053 this.lengthInMillimeter = lengthInMillimeter; 054 return this; 055 } 056 057 /** 058 * set the value to the widthInMillimeter 059 * @param widthInMillimeter value to be set 060 * @return Builder 061 */ 062 063 public ParcelMeasurementsBuilder widthInMillimeter(final Integer widthInMillimeter) { 064 this.widthInMillimeter = widthInMillimeter; 065 return this; 066 } 067 068 /** 069 * set the value to the weightInGram 070 * @param weightInGram value to be set 071 * @return Builder 072 */ 073 074 public ParcelMeasurementsBuilder weightInGram(final Integer weightInGram) { 075 this.weightInGram = weightInGram; 076 return this; 077 } 078 079 /** 080 * value of heightInMillimeter} 081 * @return heightInMillimeter 082 */ 083 084 public Integer getHeightInMillimeter() { 085 return this.heightInMillimeter; 086 } 087 088 /** 089 * value of lengthInMillimeter} 090 * @return lengthInMillimeter 091 */ 092 093 public Integer getLengthInMillimeter() { 094 return this.lengthInMillimeter; 095 } 096 097 /** 098 * value of widthInMillimeter} 099 * @return widthInMillimeter 100 */ 101 102 public Integer getWidthInMillimeter() { 103 return this.widthInMillimeter; 104 } 105 106 /** 107 * value of weightInGram} 108 * @return weightInGram 109 */ 110 111 public Integer getWeightInGram() { 112 return this.weightInGram; 113 } 114 115 /** 116 * builds ParcelMeasurements with checking for non-null required values 117 * @return ParcelMeasurements 118 */ 119 public ParcelMeasurements build() { 120 Objects.requireNonNull(heightInMillimeter, ParcelMeasurements.class + ": heightInMillimeter is missing"); 121 Objects.requireNonNull(lengthInMillimeter, ParcelMeasurements.class + ": lengthInMillimeter is missing"); 122 Objects.requireNonNull(widthInMillimeter, ParcelMeasurements.class + ": widthInMillimeter is missing"); 123 Objects.requireNonNull(weightInGram, ParcelMeasurements.class + ": weightInGram is missing"); 124 return new ParcelMeasurementsImpl(heightInMillimeter, lengthInMillimeter, widthInMillimeter, weightInGram); 125 } 126 127 /** 128 * builds ParcelMeasurements without checking for non-null required values 129 * @return ParcelMeasurements 130 */ 131 public ParcelMeasurements buildUnchecked() { 132 return new ParcelMeasurementsImpl(heightInMillimeter, lengthInMillimeter, widthInMillimeter, weightInGram); 133 } 134 135 /** 136 * factory method for an instance of ParcelMeasurementsBuilder 137 * @return builder 138 */ 139 public static ParcelMeasurementsBuilder of() { 140 return new ParcelMeasurementsBuilder(); 141 } 142 143 /** 144 * create builder for ParcelMeasurements instance 145 * @param template instance with prefilled values for the builder 146 * @return builder 147 */ 148 public static ParcelMeasurementsBuilder of(final ParcelMeasurements template) { 149 ParcelMeasurementsBuilder builder = new ParcelMeasurementsBuilder(); 150 builder.heightInMillimeter = template.getHeightInMillimeter(); 151 builder.lengthInMillimeter = template.getLengthInMillimeter(); 152 builder.widthInMillimeter = template.getWidthInMillimeter(); 153 builder.weightInGram = template.getWeightInGram(); 154 return builder; 155 } 156 157}