001package org.kuali.common.jute.builder;
002
003import static org.kuali.common.jute.base.Precondition.checkNotNull;
004
005public final class FooJute1 {
006
007    private final String field1;
008    private final String field2;
009    private final String field3;
010    private final String field4;
011    private final String field5;
012    private final String field6;
013    private final String field7;
014    private final String field8;
015    private final String field9;
016
017    private FooJute1(Builder builder) {
018        this.field1 = builder.field1;
019        this.field2 = builder.field2;
020        this.field3 = builder.field3;
021        this.field4 = builder.field4;
022        this.field5 = builder.field5;
023        this.field6 = builder.field6;
024        this.field7 = builder.field7;
025        this.field8 = builder.field8;
026        this.field9 = builder.field9;
027    }
028
029    public static FooJute1 build() {
030        return builder().build();
031    }
032
033    public static Builder builder() {
034        return new Builder();
035    }
036
037    public static class Builder implements org.apache.commons.lang3.builder.Builder<FooJute1> {
038
039        private String field1 = "foo";
040        private String field2 = "foo";
041        private String field3 = "foo";
042        private String field4 = "foo";
043        private String field5 = "foo";
044        private String field6 = "foo";
045        private String field7 = "foo";
046        private String field8 = "foo";
047        private String field9 = "foo";
048
049        public Builder withField1(String field1) {
050            this.field1 = field1;
051            return this;
052        }
053
054        public Builder withField2(String field2) {
055            this.field2 = field2;
056            return this;
057        }
058
059        public Builder withField3(String field3) {
060            this.field3 = field3;
061            return this;
062        }
063
064        public Builder withField4(String field4) {
065            this.field4 = field4;
066            return this;
067        }
068
069        public Builder withField5(String field5) {
070            this.field5 = field5;
071            return this;
072        }
073
074        public Builder withField6(String field6) {
075            this.field6 = field6;
076            return this;
077        }
078
079        public Builder withField7(String field7) {
080            this.field7 = field7;
081            return this;
082        }
083
084        public Builder withField8(String field8) {
085            this.field8 = field8;
086            return this;
087        }
088
089        public Builder withField9(String field9) {
090            this.field9 = field9;
091            return this;
092        }
093
094        @Override
095        public FooJute1 build() {
096            return validate(new FooJute1(this));
097        }
098
099        private static FooJute1 validate(FooJute1 instance) {
100            checkNotNull(instance.field1, "field1");
101            checkNotNull(instance.field2, "field2");
102            checkNotNull(instance.field3, "field3");
103            checkNotNull(instance.field4, "field4");
104            checkNotNull(instance.field5, "field5");
105            checkNotNull(instance.field6, "field6");
106            checkNotNull(instance.field7, "field7");
107            checkNotNull(instance.field8, "field8");
108            checkNotNull(instance.field9, "field9");
109            return instance;
110        }
111    }
112
113    public String getField1() {
114        return field1;
115    }
116
117    public String getField2() {
118        return field2;
119    }
120
121    public String getField3() {
122        return field3;
123    }
124
125    public String getField4() {
126        return field4;
127    }
128
129    public String getField5() {
130        return field5;
131    }
132
133    public String getField6() {
134        return field6;
135    }
136
137    public String getField7() {
138        return field7;
139    }
140
141    public String getField8() {
142        return field8;
143    }
144
145    public String getField9() {
146        return field9;
147    }
148
149}