Browse Source

fix #720 refresh configuration after restoring data

Shinsuke Sugaya 8 years ago
parent
commit
1b18c63069

+ 1 - 0
src/main/java/org/codelibs/fess/app/web/admin/backup/AdminBackupAction.java

@@ -81,6 +81,7 @@ public class AdminBackupAction extends FessAdminAction {
                 if (logger.isDebugEnabled()) {
                     logger.debug("Bulk Response:\n" + response.getContentAsString());
                 }
+                systemHelper.reloadConfiguration();
             } catch (final Exception e) {
                 logger.warn("Failed to process bulk file: " + form.bulkFile.getFileName(), e);
             }

+ 2 - 6
src/main/java/org/codelibs/fess/helper/LabelTypeHelper.java

@@ -48,13 +48,9 @@ public class LabelTypeHelper {
 
     protected volatile List<LabelTypePattern> labelTypePatternList;
 
-    protected LabelTypeService getLabelTypeService() {
-        return ComponentUtil.getComponent(LabelTypeService.class);
-    }
-
     @PostConstruct
     public void init() {
-        final List<LabelType> labelTypeList = getLabelTypeService().getLabelTypeList();
+        final List<LabelType> labelTypeList = ComponentUtil.getComponent(LabelTypeService.class).getLabelTypeList();
         buildLabelTypeItems(labelTypeList);
     }
 
@@ -112,7 +108,7 @@ public class LabelTypeHelper {
         if (labelTypePatternList == null) {
             synchronized (this) {
                 if (labelTypePatternList == null) {
-                    final List<LabelType> labelTypeList = getLabelTypeService().getLabelTypeList();
+                    final List<LabelType> labelTypeList = ComponentUtil.getComponent(LabelTypeService.class).getLabelTypeList();
                     final List<LabelTypePattern> list = new ArrayList<>();
                     for (final LabelType labelType : labelTypeList) {
                         final String includedPaths = labelType.getIncludedPaths();

+ 8 - 0
src/main/java/org/codelibs/fess/helper/SystemHelper.java

@@ -290,4 +290,12 @@ public class SystemHelper {
         return type + name;
     }
 
+    public void reloadConfiguration() {
+        ComponentUtil.getLabelTypeHelper().init();
+        ComponentUtil.getPathMappingHelper().init();
+        ComponentUtil.getSuggestHelper().init();
+        ComponentUtil.getPopularWordHelper().init();
+        // TODO restart jobs
+    }
+
 }