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;
import eu.etaxonomy.cdm.cache.CacheLoader;
import eu.etaxonomy.cdm.cache.CdmEntityCacheKey;
import eu.etaxonomy.cdm.cache.CdmTransientEntityCacher;
-import eu.etaxonomy.cdm.common.CdmUtils;
+import eu.etaxonomy.cdm.config.ConfigFileUtil;
import eu.etaxonomy.cdm.model.common.CdmBase;
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;
-import eu.etaxonomy.cdm.model.common.TermBase;
+import eu.etaxonomy.cdm.model.term.DefinedTermBase;
+import eu.etaxonomy.cdm.model.term.TermBase;
import eu.etaxonomy.taxeditor.service.TermServiceRequestExecutor;
import eu.etaxonomy.taxeditor.session.CdmEntitySession;
import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
private CacheLoader cacheLoader;
+ @Autowired
+ ConfigFileUtil configFileUtil = null;
+
@Override
protected void setup() {
EhCacheConfiguration cacheConfig = new EhCacheConfiguration();
DiskStoreConfiguration diskStoreConfiguration = new DiskStoreConfiguration();
- File ehcacheFolder = CdmUtils.getCdmHomeSubDir("taxeditor-ehcache");
+ 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");
+ }
+
// FIXME use subfolder per taxeditor version to allow running multiple installations in parallel
// String taxEditorVersion = ..;
// File ehcacheFolder = new File(ehcacheFolder, taxEditorVersion);