ref #8505 adapting taxeditor to changes in ConfigFileUtil
[taxeditor.git] / eu.etaxonomy.taxeditor.cdmlib / src / main / java / eu / etaxonomy / cdm / api / cache / CdmServiceCacher.java
index da3e92b27d41afb87b2d8559bea6ef18e150d994..e01ed86a9ef9f1aa30047bb89d8a40335fa285c5 100644 (file)
@@ -3,6 +3,7 @@ package eu.etaxonomy.cdm.api.cache;
 import java.io.File;
 import java.util.UUID;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import eu.etaxonomy.cdm.api.application.CdmApplicationState;
@@ -42,6 +43,9 @@ public class CdmServiceCacher extends CdmCacher implements ICdmEntitySessionMana
 
     private CacheLoader cacheLoader;
 
+    @Autowired
+    ConfigFileUtil configFileUtil = null;
+
     @Override
     protected void setup() {
 
@@ -59,10 +63,15 @@ public class CdmServiceCacher extends CdmCacher implements ICdmEntitySessionMana
         EhCacheConfiguration cacheConfig = new EhCacheConfiguration();
 
         DiskStoreConfiguration diskStoreConfiguration = new DiskStoreConfiguration();
-        File ehcacheFolder;
-        try {
-            ehcacheFolder = ConfigFileUtil.getCdmHomeSubDir("taxeditor-ehcache");
-        } catch (Exception e){
+        File ehcacheFolder = null;
+        if(configFileUtil != null){
+            try {
+                ehcacheFolder = configFileUtil.getCdmHomeSubDir("taxeditor-ehcache");
+            } catch (Exception e){
+                logger.warn("Cannot determine CdmHomeSubDir for ./taxeditor-ehcache, will use fallback method.", e);
+            }
+        }
+        if(ehcacheFolder != null){
             ehcacheFolder = ConfigFileUtil.getCdmHomeSubDirFallback("taxeditor-ehcache");
         }