View Javadoc
1   /*
2    * Copyright 2012-2021 CodeLibs Project and the Others.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *     http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
13   * either express or implied. See the License for the specific language
14   * governing permissions and limitations under the License.
15   */
16  package org.codelibs.fess.app.web.admin.upgrade;
17  
18  import javax.annotation.Resource;
19  
20  import org.apache.logging.log4j.LogManager;
21  import org.apache.logging.log4j.Logger;
22  import org.codelibs.fesen.client.IndicesAdminClient;
23  import org.codelibs.fess.annotation.Secured;
24  import org.codelibs.fess.app.service.ScheduledJobService;
25  import org.codelibs.fess.app.web.base.FessAdminAction;
26  import org.codelibs.fess.es.client.SearchEngineClient;
27  import org.codelibs.fess.es.config.exbhv.DataConfigBhv;
28  import org.codelibs.fess.es.config.exbhv.ElevateWordBhv;
29  import org.codelibs.fess.es.config.exbhv.FileConfigBhv;
30  import org.codelibs.fess.es.config.exbhv.LabelTypeBhv;
31  import org.codelibs.fess.es.config.exbhv.RoleTypeBhv;
32  import org.codelibs.fess.es.config.exbhv.WebConfigBhv;
33  import org.codelibs.fess.es.user.exbhv.RoleBhv;
34  import org.codelibs.fess.util.ComponentUtil;
35  import org.codelibs.fess.util.UpgradeUtil;
36  import org.lastaflute.web.Execute;
37  import org.lastaflute.web.response.HtmlResponse;
38  import org.lastaflute.web.ruts.process.ActionRuntime;
39  
40  public class AdminUpgradeAction extends FessAdminAction {
41  
42      public static final String ROLE = "admin-upgrade";
43  
44      // ===================================================================================
45      //                                                                            Constant
46      //
47      private static final Logger logger = LogManager.getLogger(AdminUpgradeAction.class);
48  
49      private static final String VERSION_12_0 = "12.0";
50  
51      private static final String VERSION_12_1 = "12.1";
52  
53      private static final String VERSION_12_2 = "12.2";
54  
55      private static final String VERSION_12_3 = "12.3";
56  
57      private static final String VERSION_12_4 = "12.4";
58  
59      private static final String VERSION_12_5 = "12.5";
60  
61      private static final String VERSION_12_6 = "12.6";
62  
63      private static final String VERSION_12_7 = "12.7";
64  
65      private static final String VERSION_13_0 = "13.0";
66  
67      private static final String VERSION_13_1 = "13.1";
68  
69      private static final String VERSION_13_2 = "13.2";
70  
71      private static final String VERSION_13_3 = "13.3";
72  
73      private static final String VERSION_13_4 = "13.4";
74  
75      private static final String VERSION_13_5 = "13.5";
76  
77      private static final String VERSION_13_6 = "13.6";
78  
79      private static final String VERSION_13_7 = "13.7";
80  
81      private static final String VERSION_13_8 = "13.8";
82  
83      private static final String VERSION_13_9 = "13.9";
84  
85      private static final String VERSION_13_10 = "13.10";
86  
87      private static final String VERSION_13_11 = "13.11";
88  
89      private static final String VERSION_13_12 = "13.12";
90  
91      private static final String VERSION_13_13 = "13.13";
92  
93      // ===================================================================================
94      //                                                                           Attribute
95      //
96      @Resource
97      protected RoleBhv roleBhv;
98  
99      @Resource
100     protected RoleTypeBhv roleTypeBhv;
101 
102     @Resource
103     protected LabelTypeBhv labelTypeBhv;
104 
105     @Resource
106     protected WebConfigBhv webConfigBhv;
107 
108     @Resource
109     protected FileConfigBhv fileConfigBhv;
110 
111     @Resource
112     protected DataConfigBhv dataConfigBhv;
113 
114     @Resource
115     protected ElevateWordBhv elevateWordBhv;
116 
117     @Resource
118     protected SearchEngineClient searchEngineClient;
119 
120     @Resource
121     protected ScheduledJobService scheduledJobService;
122 
123     // ===================================================================================
124     //                                                                               Hook
125     //                                                                              ======
126     @Override
127     protected void setupHtmlData(final ActionRuntime runtime) {
128         super.setupHtmlData(runtime);
129         runtime.registerData("helpLink", systemHelper.getHelpLink(fessConfig.getOnlineHelpNameUpgrade()));
130     }
131 
132     @Override
133     protected String getActionRole() {
134         return ROLE;
135     }
136 
137     // ===================================================================================
138     //                                                                      Search Execute
139     //                                                                      ==============
140 
141     @Execute
142     @Secured({ ROLE, ROLE + VIEW })
143     public HtmlResponse index() {
144         saveToken();
145         return asIndexHtml();
146     }
147 
148     private HtmlResponse asIndexHtml() {
149         return asHtml(path_AdminUpgrade_AdminUpgradeJsp).useForm(UpgradeForm.class);
150     }
151 
152     @Execute
153     @Secured({ ROLE })
154     public HtmlResponse upgradeFrom(final UpgradeForm form) {
155         validate(form, messages -> {}, this::asIndexHtml);
156         verifyToken(this::asIndexHtml);
157 
158         if (VERSION_12_0.equals(form.targetVersion)) {
159             try {
160                 upgradeFrom12_0();
161                 upgradeFrom12_1();
162                 upgradeFrom12_2();
163                 upgradeFrom12_3();
164                 upgradeFrom12_4();
165                 upgradeFrom12_5();
166                 upgradeFrom12_6();
167                 upgradeFrom13_0();
168                 upgradeFrom13_1();
169                 upgradeFrom13_2();
170                 upgradeFrom13_3();
171                 upgradeFrom13_4();
172                 upgradeFrom13_5();
173                 upgradeFrom13_6();
174                 upgradeFrom13_7();
175                 upgradeFrom13_8();
176                 upgradeFrom13_9();
177                 upgradeFrom13_10();
178                 upgradeFrom13_11();
179                 upgradeFrom13_12();
180                 upgradeFrom13_13();
181                 upgradeFromAll();
182 
183                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
184 
185                 systemHelper.reloadConfiguration();
186             } catch (final Exception e) {
187                 logger.warn("Failed to upgrade data.", e);
188                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_0, e.getLocalizedMessage()));
189             }
190         } else if (VERSION_12_1.equals(form.targetVersion)) {
191             try {
192                 upgradeFrom12_1();
193                 upgradeFrom12_2();
194                 upgradeFrom12_3();
195                 upgradeFrom12_4();
196                 upgradeFrom12_5();
197                 upgradeFrom12_6();
198                 upgradeFrom13_0();
199                 upgradeFrom13_1();
200                 upgradeFrom13_2();
201                 upgradeFrom13_3();
202                 upgradeFrom13_4();
203                 upgradeFrom13_5();
204                 upgradeFrom13_6();
205                 upgradeFrom13_7();
206                 upgradeFrom13_8();
207                 upgradeFrom13_9();
208                 upgradeFrom13_10();
209                 upgradeFrom13_11();
210                 upgradeFrom13_12();
211                 upgradeFrom13_13();
212                 upgradeFromAll();
213 
214                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
215 
216                 systemHelper.reloadConfiguration();
217             } catch (final Exception e) {
218                 logger.warn("Failed to upgrade data.", e);
219                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_1, e.getLocalizedMessage()));
220             }
221         } else if (VERSION_12_2.equals(form.targetVersion)) {
222             try {
223                 upgradeFrom12_2();
224                 upgradeFrom12_3();
225                 upgradeFrom12_4();
226                 upgradeFrom12_5();
227                 upgradeFrom12_6();
228                 upgradeFrom13_0();
229                 upgradeFrom13_1();
230                 upgradeFrom13_2();
231                 upgradeFrom13_3();
232                 upgradeFrom13_4();
233                 upgradeFrom13_5();
234                 upgradeFrom13_6();
235                 upgradeFrom13_7();
236                 upgradeFrom13_8();
237                 upgradeFrom13_9();
238                 upgradeFrom13_10();
239                 upgradeFrom13_11();
240                 upgradeFrom13_12();
241                 upgradeFrom13_13();
242                 upgradeFromAll();
243 
244                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
245 
246                 systemHelper.reloadConfiguration();
247             } catch (final Exception e) {
248                 logger.warn("Failed to upgrade data.", e);
249                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_2, e.getLocalizedMessage()));
250             }
251         } else if (VERSION_12_3.equals(form.targetVersion)) {
252             try {
253                 upgradeFrom12_3();
254                 upgradeFrom12_4();
255                 upgradeFrom12_5();
256                 upgradeFrom12_6();
257                 upgradeFrom13_0();
258                 upgradeFrom13_1();
259                 upgradeFrom13_2();
260                 upgradeFrom13_3();
261                 upgradeFrom13_4();
262                 upgradeFrom13_5();
263                 upgradeFrom13_6();
264                 upgradeFrom13_7();
265                 upgradeFrom13_8();
266                 upgradeFrom13_9();
267                 upgradeFrom13_10();
268                 upgradeFrom13_11();
269                 upgradeFrom13_12();
270                 upgradeFrom13_13();
271                 upgradeFromAll();
272 
273                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
274 
275                 systemHelper.reloadConfiguration();
276             } catch (final Exception e) {
277                 logger.warn("Failed to upgrade data.", e);
278                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_3, e.getLocalizedMessage()));
279             }
280         } else if (VERSION_12_4.equals(form.targetVersion)) {
281             try {
282                 upgradeFrom12_4();
283                 upgradeFrom12_5();
284                 upgradeFrom12_6();
285                 upgradeFrom13_0();
286                 upgradeFrom13_1();
287                 upgradeFrom13_2();
288                 upgradeFrom13_3();
289                 upgradeFrom13_4();
290                 upgradeFrom13_5();
291                 upgradeFrom13_6();
292                 upgradeFrom13_7();
293                 upgradeFrom13_8();
294                 upgradeFrom13_9();
295                 upgradeFrom13_10();
296                 upgradeFrom13_11();
297                 upgradeFrom13_12();
298                 upgradeFrom13_13();
299                 upgradeFromAll();
300 
301                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
302 
303                 systemHelper.reloadConfiguration();
304             } catch (final Exception e) {
305                 logger.warn("Failed to upgrade data.", e);
306                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_4, e.getLocalizedMessage()));
307             }
308         } else if (VERSION_12_5.equals(form.targetVersion)) {
309             try {
310                 upgradeFrom12_5();
311                 upgradeFrom12_6();
312                 upgradeFrom13_0();
313                 upgradeFrom13_1();
314                 upgradeFrom13_2();
315                 upgradeFrom13_3();
316                 upgradeFrom13_4();
317                 upgradeFrom13_5();
318                 upgradeFrom13_6();
319                 upgradeFrom13_7();
320                 upgradeFrom13_8();
321                 upgradeFrom13_9();
322                 upgradeFrom13_10();
323                 upgradeFrom13_11();
324                 upgradeFrom13_12();
325                 upgradeFrom13_13();
326                 upgradeFromAll();
327 
328                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
329 
330                 systemHelper.reloadConfiguration();
331             } catch (final Exception e) {
332                 logger.warn("Failed to upgrade data.", e);
333                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_5, e.getLocalizedMessage()));
334             }
335         } else if (VERSION_12_6.equals(form.targetVersion) || VERSION_12_7.equals(form.targetVersion)) {
336             try {
337                 upgradeFrom12_6();
338                 upgradeFrom13_0();
339                 upgradeFrom13_1();
340                 upgradeFrom13_2();
341                 upgradeFrom13_3();
342                 upgradeFrom13_4();
343                 upgradeFrom13_5();
344                 upgradeFrom13_6();
345                 upgradeFrom13_7();
346                 upgradeFrom13_8();
347                 upgradeFrom13_9();
348                 upgradeFrom13_10();
349                 upgradeFrom13_11();
350                 upgradeFrom13_12();
351                 upgradeFrom13_13();
352                 upgradeFromAll();
353 
354                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
355 
356                 systemHelper.reloadConfiguration();
357             } catch (final Exception e) {
358                 logger.warn("Failed to upgrade data.", e);
359                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_12_6, e.getLocalizedMessage()));
360             }
361         } else if (VERSION_13_0.equals(form.targetVersion)) {
362             try {
363                 upgradeFrom13_0();
364                 upgradeFrom13_1();
365                 upgradeFrom13_2();
366                 upgradeFrom13_3();
367                 upgradeFrom13_4();
368                 upgradeFrom13_5();
369                 upgradeFrom13_6();
370                 upgradeFrom13_7();
371                 upgradeFrom13_8();
372                 upgradeFrom13_10();
373                 upgradeFrom13_11();
374                 upgradeFrom13_12();
375                 upgradeFrom13_13();
376                 upgradeFromAll();
377 
378                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
379 
380                 systemHelper.reloadConfiguration();
381             } catch (final Exception e) {
382                 logger.warn("Failed to upgrade data.", e);
383                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_0, e.getLocalizedMessage()));
384             }
385         } else if (VERSION_13_1.equals(form.targetVersion)) {
386             try {
387                 upgradeFrom13_1();
388                 upgradeFrom13_2();
389                 upgradeFrom13_3();
390                 upgradeFrom13_4();
391                 upgradeFrom13_5();
392                 upgradeFrom13_6();
393                 upgradeFrom13_7();
394                 upgradeFrom13_8();
395                 upgradeFrom13_9();
396                 upgradeFrom13_10();
397                 upgradeFrom13_11();
398                 upgradeFrom13_12();
399                 upgradeFrom13_13();
400                 upgradeFromAll();
401 
402                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
403 
404                 systemHelper.reloadConfiguration();
405             } catch (final Exception e) {
406                 logger.warn("Failed to upgrade data.", e);
407                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_1, e.getLocalizedMessage()));
408             }
409         } else if (VERSION_13_2.equals(form.targetVersion)) {
410             try {
411                 upgradeFrom13_2();
412                 upgradeFrom13_3();
413                 upgradeFrom13_4();
414                 upgradeFrom13_5();
415                 upgradeFrom13_6();
416                 upgradeFrom13_7();
417                 upgradeFrom13_8();
418                 upgradeFrom13_9();
419                 upgradeFrom13_10();
420                 upgradeFrom13_11();
421                 upgradeFrom13_12();
422                 upgradeFrom13_13();
423                 upgradeFromAll();
424 
425                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
426 
427                 systemHelper.reloadConfiguration();
428             } catch (final Exception e) {
429                 logger.warn("Failed to upgrade data.", e);
430                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_2, e.getLocalizedMessage()));
431             }
432         } else if (VERSION_13_3.equals(form.targetVersion)) {
433             try {
434                 upgradeFrom13_3();
435                 upgradeFrom13_4();
436                 upgradeFrom13_5();
437                 upgradeFrom13_6();
438                 upgradeFrom13_7();
439                 upgradeFrom13_8();
440                 upgradeFrom13_9();
441                 upgradeFrom13_10();
442                 upgradeFrom13_11();
443                 upgradeFrom13_12();
444                 upgradeFrom13_13();
445                 upgradeFromAll();
446 
447                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
448 
449                 systemHelper.reloadConfiguration();
450             } catch (final Exception e) {
451                 logger.warn("Failed to upgrade data.", e);
452                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_3, e.getLocalizedMessage()));
453             }
454         } else if (VERSION_13_4.equals(form.targetVersion)) {
455             try {
456                 upgradeFrom13_4();
457                 upgradeFrom13_5();
458                 upgradeFrom13_6();
459                 upgradeFrom13_7();
460                 upgradeFrom13_8();
461                 upgradeFrom13_9();
462                 upgradeFrom13_10();
463                 upgradeFrom13_11();
464                 upgradeFrom13_12();
465                 upgradeFrom13_13();
466                 upgradeFromAll();
467 
468                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
469 
470                 systemHelper.reloadConfiguration();
471             } catch (final Exception e) {
472                 logger.warn("Failed to upgrade data.", e);
473                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_4, e.getLocalizedMessage()));
474             }
475         } else if (VERSION_13_5.equals(form.targetVersion)) {
476             try {
477                 upgradeFrom13_5();
478                 upgradeFrom13_6();
479                 upgradeFrom13_7();
480                 upgradeFrom13_8();
481                 upgradeFrom13_9();
482                 upgradeFrom13_10();
483                 upgradeFrom13_11();
484                 upgradeFrom13_12();
485                 upgradeFrom13_13();
486                 upgradeFromAll();
487 
488                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
489 
490                 systemHelper.reloadConfiguration();
491             } catch (final Exception e) {
492                 logger.warn("Failed to upgrade data.", e);
493                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_5, e.getLocalizedMessage()));
494             }
495         } else if (VERSION_13_6.equals(form.targetVersion)) {
496             try {
497                 upgradeFrom13_6();
498                 upgradeFrom13_7();
499                 upgradeFrom13_8();
500                 upgradeFrom13_9();
501                 upgradeFrom13_10();
502                 upgradeFrom13_11();
503                 upgradeFrom13_12();
504                 upgradeFrom13_13();
505                 upgradeFromAll();
506 
507                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
508 
509                 systemHelper.reloadConfiguration();
510             } catch (final Exception e) {
511                 logger.warn("Failed to upgrade data.", e);
512                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_6, e.getLocalizedMessage()));
513             }
514         } else if (VERSION_13_7.equals(form.targetVersion)) {
515             try {
516                 upgradeFrom13_7();
517                 upgradeFrom13_8();
518                 upgradeFrom13_9();
519                 upgradeFrom13_10();
520                 upgradeFrom13_11();
521                 upgradeFrom13_12();
522                 upgradeFrom13_13();
523                 upgradeFromAll();
524 
525                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
526 
527                 systemHelper.reloadConfiguration();
528             } catch (final Exception e) {
529                 logger.warn("Failed to upgrade data.", e);
530                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_7, e.getLocalizedMessage()));
531             }
532         } else if (VERSION_13_8.equals(form.targetVersion)) {
533             try {
534                 upgradeFrom13_8();
535                 upgradeFrom13_9();
536                 upgradeFrom13_10();
537                 upgradeFrom13_11();
538                 upgradeFrom13_12();
539                 upgradeFrom13_13();
540                 upgradeFromAll();
541 
542                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
543 
544                 systemHelper.reloadConfiguration();
545             } catch (final Exception e) {
546                 logger.warn("Failed to upgrade data.", e);
547                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_8, e.getLocalizedMessage()));
548             }
549         } else if (VERSION_13_9.equals(form.targetVersion)) {
550             try {
551                 upgradeFrom13_9();
552                 upgradeFrom13_10();
553                 upgradeFrom13_11();
554                 upgradeFrom13_12();
555                 upgradeFrom13_13();
556                 upgradeFromAll();
557 
558                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
559 
560                 systemHelper.reloadConfiguration();
561             } catch (final Exception e) {
562                 logger.warn("Failed to upgrade data.", e);
563                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_9, e.getLocalizedMessage()));
564             }
565         } else if (VERSION_13_10.equals(form.targetVersion)) {
566             try {
567                 upgradeFrom13_10();
568                 upgradeFrom13_11();
569                 upgradeFrom13_12();
570                 upgradeFrom13_13();
571                 upgradeFromAll();
572 
573                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
574 
575                 systemHelper.reloadConfiguration();
576             } catch (final Exception e) {
577                 logger.warn("Failed to upgrade data.", e);
578                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_10, e.getLocalizedMessage()));
579             }
580         } else if (VERSION_13_11.equals(form.targetVersion)) {
581             try {
582                 upgradeFrom13_11();
583                 upgradeFrom13_12();
584                 upgradeFrom13_13();
585                 upgradeFromAll();
586 
587                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
588 
589                 systemHelper.reloadConfiguration();
590             } catch (final Exception e) {
591                 logger.warn("Failed to upgrade data.", e);
592                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_11, e.getLocalizedMessage()));
593             }
594         } else if (VERSION_13_12.equals(form.targetVersion)) {
595             try {
596                 upgradeFrom13_12();
597                 upgradeFrom13_13();
598                 upgradeFromAll();
599 
600                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
601 
602                 systemHelper.reloadConfiguration();
603             } catch (final Exception e) {
604                 logger.warn("Failed to upgrade data.", e);
605                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_12, e.getLocalizedMessage()));
606             }
607         } else if (VERSION_13_13.equals(form.targetVersion)) {
608             try {
609                 upgradeFrom13_13();
610                 upgradeFromAll();
611 
612                 saveInfo(messages -> messages.addSuccessStartedDataUpdate(GLOBAL));
613 
614                 systemHelper.reloadConfiguration();
615             } catch (final Exception e) {
616                 logger.warn("Failed to upgrade data.", e);
617                 saveError(messages -> messages.addErrorsFailedToUpgradeFrom(GLOBAL, VERSION_13_13, e.getLocalizedMessage()));
618             }
619         } else {
620             saveError(messages -> messages.addErrorsUnknownVersionForUpgrade(GLOBAL));
621         }
622         return redirect(getClass());
623     }
624 
625     private void upgradeFrom12_0() {
626         // nothing
627     }
628 
629     private void upgradeFrom12_1() {
630         final IndicesAdminClient indicesClient = searchEngineClient.admin().indices();
631 
632         UpgradeUtil.putMapping(indicesClient, "fess_log.search_log", "search_log",
633                 "{\"dynamic_templates\": [" + "{\"documents\": {\"path_match\": \"documents.*\",\"mapping\": {\"type\": \"keyword\"}}}"//
634                         + "]}");
635         UpgradeUtil.addFieldMapping(indicesClient, "fess_log.click_log", "click_log", "urlId",
636                 "{\"properties\":{\"urlId\":{\"type\":\"keyword\"}}}");
637     }
638 
639     private void upgradeFrom12_2() {
640         // nothing
641     }
642 
643     private void upgradeFrom12_3() {
644         ComponentUtil.getThumbnailManager().migrate();
645     }
646 
647     private void upgradeFrom12_4() {
648         // nothing
649     }
650 
651     private void upgradeFrom12_5() {
652         // nothing
653     }
654 
655     private void upgradeFrom12_6() {
656         final IndicesAdminClient indicesClient = searchEngineClient.admin().indices();
657         UpgradeUtil.deleteIndex(indicesClient, ".fess_config.web_config_to_role", res -> {});
658         UpgradeUtil.deleteIndex(indicesClient, ".fess_config.file_config_to_role", res -> {});
659         UpgradeUtil.deleteIndex(indicesClient, ".fess_config.data_config_to_role", res -> {});
660 
661         UpgradeUtil.addFieldMapping(indicesClient, "fess_log.search_log", "search_log", "hitCountRelation",
662                 "{\"properties\":{\"hitCountRelation\":{\"type\":\"keyword\"}}}");
663     }
664 
665     private void upgradeFrom13_0() {
666         UpgradeUtil.addData(searchEngineClient, ".fess_config.scheduled_job", "label_updater",
667                 "{\"name\":\"Label Updater\",\"target\":\"all\",\"cronExpression\":\"\",\"scriptType\":\"groovy\",\"scriptData\":\"return container.getComponent(\\\"updateLabelJob\\\").execute();\",\"jobLogging\":false,\"crawler\":false,\"available\":true,\"sortOrder\":11,\"createdBy\":\"system\",\"createdTime\":0,\"updatedBy\":\"system\",\"updatedTime\":0}");
668     }
669 
670     private void upgradeFrom13_1() {
671         // nothing
672     }
673 
674     private void upgradeFrom13_2() {
675         // nothing
676     }
677 
678     private void upgradeFrom13_3() {
679         // nothing
680     }
681 
682     private void upgradeFrom13_4() {
683         // nothing
684     }
685 
686     private void upgradeFrom13_5() {
687         // nothing
688     }
689 
690     private void upgradeFrom13_6() {
691         // nothing
692     }
693 
694     private void upgradeFrom13_7() {
695         // nothing
696     }
697 
698     private void upgradeFrom13_8() {
699         // nothing
700     }
701 
702     private void upgradeFrom13_9() {
703         // nothing
704     }
705 
706     private void upgradeFrom13_10() {
707         // nothing
708     }
709 
710     private void upgradeFrom13_11() {
711         // nothing
712     }
713 
714     private void upgradeFrom13_12() {
715         // nothing
716     }
717 
718     private void upgradeFrom13_13() {
719         // nothing
720     }
721 
722     private void upgradeFromAll() {
723         // nothing
724     }
725 
726 }