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.editor;
35
36 import info.magnolia.ui.field.ConfiguredComplexPropertyDefinition;
37 import info.magnolia.ui.field.FieldValidatorDefinition;
38 import info.magnolia.ui.field.UploadField;
39 import info.magnolia.ui.field.UploadFieldDefinition;
40 import info.magnolia.ui.field.ValueBoundProperty;
41 import info.magnolia.ui.field.factory.AbstractFieldFactory;
42 import info.magnolia.ui.field.factory.UploadFieldFactory;
43
44 import java.io.File;
45 import java.util.Collections;
46 import java.util.List;
47
48 import com.vaadin.data.Converter;
49
50 import lombok.Getter;
51 import lombok.Setter;
52
53
54
55
56
57
58 @Getter
59 @Setter
60 public class UploadViewDefinition<T> extends ConfiguredComplexPropertyDefinition<T> implements
61 EditorDefinition<T>, ComplexPropertyDefinition<T>, ValueBoundProperty<File> {
62
63
64
65
66 private Class<? extends AbstractFieldFactory<File, ? extends UploadFieldDefinition>> factoryClass = UploadFieldFactory.class;
67
68
69
70
71 private boolean required;
72
73
74
75
76 private String requiredErrorMessage;
77 private boolean readOnly;
78 private String conversionErrorMessage;
79 private List<FieldValidatorDefinition> validators = Collections.emptyList();
80 private Class<? extends Converter<File, ?>> converterClass;
81 private File defaultValue;
82
83 public UploadViewDefinition() {
84 setImplementationClass((Class) UploadView.class);
85 }
86
87 @Override
88 public EditorDefinition<T> getEditorDefinition() {
89 return this;
90 }
91
92 @Override
93 public Class<File> getType() {
94 return File.class;
95 }
96 }