1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.ui.form.config;
35
36 import info.magnolia.ui.form.field.definition.ConfiguredFieldDefinition;
37 import info.magnolia.ui.form.field.transformer.Transformer;
38 import info.magnolia.ui.form.validator.definition.ConfiguredFieldValidatorDefinition;
39
40
41
42
43 public abstract class AbstractFieldBuilder {
44
45 public abstract ConfiguredFieldDefinition definition();
46
47 public AbstractFieldBuilder label(String label) {
48 definition().setLabel(label);
49 return this;
50 }
51
52 public AbstractFieldBuilder i18nBasename(String i18nBasename) {
53 definition().setI18nBasename(i18nBasename);
54 return this;
55 }
56
57 public AbstractFieldBuilder i18n(boolean i18n) {
58 definition().setI18n(i18n);
59 return this;
60 }
61
62 public AbstractFieldBuilder i18n() {
63 definition().setI18n(true);
64 return this;
65 }
66
67 public AbstractFieldBuilder description(String description) {
68 definition().setDescription(description);
69 return this;
70 }
71
72 public AbstractFieldBuilder type(String type) {
73 definition().setType(type);
74 return this;
75 }
76
77 public AbstractFieldBuilder required(boolean required) {
78 definition().setRequired(required);
79 return this;
80 }
81
82 public AbstractFieldBuilder required() {
83 definition().setRequired(true);
84 return this;
85 }
86
87 public AbstractFieldBuilder requiredErrorMessage(String requiredErrorMessage) {
88 definition().setRequiredErrorMessage(requiredErrorMessage);
89 return this;
90 }
91
92 public AbstractFieldBuilder readOnly(boolean readOnly) {
93 definition().setReadOnly(readOnly);
94 return this;
95 }
96
97 public AbstractFieldBuilder readOnly() {
98 definition().setReadOnly(true);
99 return this;
100 }
101
102 public AbstractFieldBuilder defaultValue(String defaultValue) {
103 definition().setDefaultValue(defaultValue);
104 return this;
105 }
106
107 public AbstractFieldBuilder styleName(String styleName) {
108 definition().setStyleName(styleName);
109 return this;
110 }
111
112 public AbstractFieldBuilder validator(ConfiguredFieldValidatorDefinition validatorDefinition) {
113 definition().addValidator(validatorDefinition);
114 return this;
115 }
116
117 public AbstractFieldBuilder validator(GenericValidatorBuilder validatorBuilder) {
118 definition().addValidator(validatorBuilder.definition());
119 return this;
120 }
121
122 public AbstractFieldBuilder transformerClass(Class<? extends Transformer<?>> transformerClass) {
123 definition().setTransformerClass(transformerClass);
124 return this;
125 }
126 }