1 package fr.ifremer.quadrige2.core.config;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import org.nuiton.config.ConfigOptionDef;
26
27 import java.io.File;
28 import java.util.Locale;
29
30 import static org.nuiton.i18n.I18n.n;
31
32
33
34
35
36
37
38 public enum Quadrige2CoreConfigurationOption implements ConfigOptionDef {
39
40
41
42
43 PLUGINS_DIRECTORY(
44 "quadrige2.plugins.directory",
45 n("quadrige2.config.option.plugins.directory.description"),
46 "${quadrige2.basedir}/plugins",
47 File.class),
48
49 CONFIG_DIRECTORY(
50 "quadrige2.config.directory",
51 n("quadrige2.config.option.config.directory.description"),
52 "${quadrige2.basedir}/config",
53 File.class),
54
55
56
57
58 UPDATE_APPLICATION_URL(
59 "quadrige2.update.application.url",
60 n("quadrige2.config.option.update.application.url.description"),
61 "${quadrige2.site.url}/quadrige2-application.properties",
62 String.class,
63 false),
64 UPDATE_DATA_URL(
65 "quadrige2.update.data.url",
66 n("quadrige2.config.option.update.data.url.description"),
67 "${quadrige2.site.url}/quadrige2-data.properties",
68 String.class,
69 false),
70 INSTALL_DB_URL(
71 "quadrige2.install.db.url",
72 n("quadrige2.config.option.install.db.url.description"),
73 "${quadrige2.update.data.url}",
74 String.class,
75 false),
76 UPDATE_PLUGINS_URL(
77 "quadrige2.update.plugins.url",
78 n("quadrige2.config.option.update.plugins.url.description"),
79 "${quadrige2.update.data.url}",
80 String.class,
81 false),
82
83
84
85
86 AUTHENTICATION_DISABLED(
87 "quadrige2.authentication.disabled",
88 n("quadrige2.config.option.authentication.disabled.description"),
89 String.valueOf(false),
90 Boolean.class,
91 false),
92 AUTHENTICATION_FORCED(
93 "quadrige2.authentication.forced",
94 n("quadrige2.config.option.authentication.forced.description"),
95 String.valueOf(true),
96 Boolean.class,
97 false),
98 AUTHENTICATION_MOCK_USERNAME(
99 "quadrige2.authentication.mock.username",
100 n("quadrige2.config.option.authentication.mock.username.description"),
101 "demo",
102 String.class,
103 false),
104 AUTHENTICATION_MOCK_PASSWORD(
105 "quadrige2.authentication.mock.password",
106 n("quadrige2.config.option.authentication.mock.password.description"),
107 "demo",
108 String.class,
109 false),
110 AUTHENTICATION_MOCK_USER_ID(
111 "quadrige2.authentication.mock.userId",
112 n("quadrige2.config.option.authentication.mock.userId.description"),
113 "0",
114 Integer.class,
115 false),
116 AUTHENTICATION_INTRANET_SITE_URL(
117 "quadrige2.authentication.intranet.site.url",
118 n("quadrige2.config.option.authentication.intranet.site.url.description"),
119 "${quadrige2.site.url}/auth",
120 String.class,
121 false),
122 AUTHENTICATION_INTRANET_SITE_TIMEOUT(
123 "quadrige2.authentication.intranet.site.timeout",
124 n("quadrige2.config.option.authentication.intranet.site.timeout.description"),
125 "5000",
126 Integer.class,
127 false),
128 AUTHENTICATION_EXTRANET_SITE_URL(
129 "quadrige2.authentication.extranet.site.url",
130 n("quadrige2.config.option.authentication.extranet.site.url.description"),
131 "${quadrige2.site.url}/auth",
132 String.class,
133 false),
134 AUTHENTICATION_EXTRANET_SITE_TIMEOUT(
135 "quadrige2.authentication.extranet.site.timeout",
136 n("quadrige2.config.option.authentication.extranet.site.timeout.description"),
137 "5000",
138 Integer.class,
139 false),
140 AUTHENTICATION_DEFAULT_USERNAME(
141 "quadrige2.authentication.username",
142 n("quadrige2.config.option.authentication.username.description"),
143 null,
144 String.class,
145 false),
146 AUTHENTICATION_DEFAULT_PASSWORD(
147 "quadrige2.authentication.password",
148 n("quadrige2.config.option.authentication.password.description"),
149 null,
150 String.class,
151 false),
152
153
154
155
156 SYNCHRONIZATION_PERIOD_SELECTION_ENABLE(
157 "quadrige2.synchronization.period.enable",
158 n("quadrige2.config.option.synchro.period.enable.description"),
159 String.valueOf(false),
160 Boolean.class,
161 false),
162 SYNCHRONIZATION_ZIP_FILE_PREFIX(
163 "quadrige2.synchro.zipFile.prefix",
164 n("quadrige2.config.option.synchro.zipFile.prefix.description"),
165 "quadrige2-db-",
166 String.class,
167 false),
168
169
170
171
172 LAUNCH_MODE(
173 "quadrige2.launch.mode",
174 n("quadrige2.config.option.launch.mode.description"),
175 null,
176 String.class),
177 I18N_LOCALE(
178 "quadrige2.i18n.locale",
179 n("quadrige2.config.option.i18n.locale.description"),
180 Locale.FRANCE.getCountry(),
181 Locale.class,
182 false)
183
184 ;
185
186
187
188
189 private final String key;
190
191
192
193
194 private final String description;
195
196
197
198
199 private final Class<?> type;
200
201
202
203
204 private String defaultValue;
205
206
207
208
209 private boolean isTransient;
210
211
212
213
214 private boolean isFinal;
215
216 Quadrige2CoreConfigurationOption(String key,
217 String description,
218 String defaultValue,
219 Class<?> type,
220 boolean isTransient) {
221 this.key = key;
222 this.description = description;
223 this.defaultValue = defaultValue;
224 this.type = type;
225 this.isTransient = isTransient;
226 this.isFinal = isTransient;
227 }
228
229 Quadrige2CoreConfigurationOption(String key,
230 String description,
231 String defaultValue,
232 Class<?> type) {
233 this(key, description, defaultValue, type, true);
234 }
235
236
237
238
239 @Override
240 public String getKey() {
241 return key;
242 }
243
244
245
246
247 @Override
248 public Class<?> getType() {
249 return type;
250 }
251
252
253
254
255 @Override
256 public String getDescription() {
257 return description;
258 }
259
260
261
262
263 @Override
264 public String getDefaultValue() {
265 return defaultValue;
266 }
267
268
269
270
271 @Override
272 public boolean isTransient() {
273 return isTransient;
274 }
275
276
277
278
279 @Override
280 public boolean isFinal() {
281 return isFinal;
282 }
283
284
285
286
287 @Override
288 public void setDefaultValue(String defaultValue) {
289 this.defaultValue = defaultValue;
290 }
291
292
293
294
295 @Override
296 public void setTransient(boolean newValue) {
297
298 }
299
300
301
302
303 @Override
304 public void setFinal(boolean newValue) {
305
306 }
307 }