1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.codelibs.fess.app.web.admin.fileconfig;
17
18 import org.codelibs.fess.Constants;
19 import org.codelibs.fess.app.web.CrudMode;
20 import org.codelibs.fess.mylasta.direction.FessConfig;
21 import org.codelibs.fess.util.ComponentUtil;
22 import org.codelibs.fess.validation.CustomSize;
23 import org.codelibs.fess.validation.UriType;
24 import org.codelibs.fess.validation.UriTypeValidator.ProtocolType;
25 import org.lastaflute.web.validation.Required;
26 import org.lastaflute.web.validation.theme.conversion.ValidateTypeFailure;
27
28 import jakarta.validation.constraints.Max;
29 import jakarta.validation.constraints.Min;
30 import jakarta.validation.constraints.Size;
31
32
33
34
35
36 public class CreateForm {
37
38
39
40
41 public CreateForm() {
42 }
43
44
45 public String[] labelTypeIds;
46
47
48 @ValidateTypeFailure
49 public Integer crudMode;
50
51
52 @Required
53 @Size(max = 200)
54 public String name;
55
56
57 @Size(max = 1000)
58 public String description;
59
60
61 @Required
62 @UriType(protocolType = ProtocolType.FILE)
63 @CustomSize(maxKey = "form.admin.max.input.size")
64 public String paths;
65
66
67 @CustomSize(maxKey = "form.admin.max.input.size")
68 public String includedPaths;
69
70
71 @CustomSize(maxKey = "form.admin.max.input.size")
72 public String excludedPaths;
73
74
75 @CustomSize(maxKey = "form.admin.max.input.size")
76 public String includedDocPaths;
77
78
79 @CustomSize(maxKey = "form.admin.max.input.size")
80 public String excludedDocPaths;
81
82
83 @CustomSize(maxKey = "form.admin.max.input.size")
84 public String configParameter;
85
86
87 @Min(value = 0)
88 @Max(value = 2147483647)
89 @ValidateTypeFailure
90 public Integer depth;
91
92
93 @Min(value = 0)
94 @Max(value = 9223372036854775807L)
95 @ValidateTypeFailure
96 public Long maxAccessCount;
97
98
99 @Required
100 @Min(value = 1)
101 @Max(value = 2147483647)
102 @ValidateTypeFailure
103 public Integer numOfThread;
104
105
106 @Required
107 @Min(value = 0)
108 @Max(value = 2147483647)
109 @ValidateTypeFailure
110 public Integer intervalTime;
111
112
113 @Required
114 @ValidateTypeFailure
115 public Float boost;
116
117
118 @Required
119 @Size(max = 5)
120 public String available;
121
122
123 @CustomSize(maxKey = "form.admin.max.input.size")
124 public String permissions;
125
126
127 @CustomSize(maxKey = "form.admin.max.input.size")
128 public String virtualHosts;
129
130
131 @Required
132 @Min(value = 0)
133 @Max(value = 2147483647)
134 @ValidateTypeFailure
135 public Integer sortOrder;
136
137
138 @Size(max = 1000)
139 public String createdBy;
140
141
142 @ValidateTypeFailure
143 public Long createdTime;
144
145
146
147
148 public void initialize() {
149 crudMode = CrudMode.CREATE;
150 final FessConfig fessConfig = ComponentUtil.getFessConfig();
151 includedPaths = fessConfig.getCrawlerDocumentFileDefaultIncludeIndexPatterns();
152 excludedPaths = fessConfig.getCrawlerDocumentFileDefaultExcludeIndexPatterns();
153 includedDocPaths = fessConfig.getCrawlerDocumentFileDefaultIncludeSearchPatterns();
154 excludedDocPaths = fessConfig.getCrawlerDocumentFileDefaultExcludeSearchPatterns();
155 boost = 1.0f;
156 numOfThread = Constants.DEFAULT_NUM_OF_THREAD_FOR_FS;
157 intervalTime = Constants.DEFAULT_INTERVAL_TIME_FOR_FS;
158 sortOrder = 0;
159 createdBy = ComponentUtil.getSystemHelper().getUsername();
160 createdTime = ComponentUtil.getSystemHelper().getCurrentTimeAsLong();
161 permissions = fessConfig.getSearchDefaultDisplayPermission();
162 }
163 }