소스 검색

fix #577 delete temp directory

Shinsuke Sugaya 9 년 전
부모
커밋
cd1a1bc936
2개의 변경된 파일6개의 추가작업 그리고 40개의 파일을 삭제
  1. 3 20
      src/main/java/org/codelibs/fess/job/CrawlJob.java
  2. 3 20
      src/main/java/org/codelibs/fess/job/SuggestJob.java

+ 3 - 20
src/main/java/org/codelibs/fess/job/CrawlJob.java

@@ -28,6 +28,7 @@ import java.util.Properties;
 
 
 import javax.servlet.ServletContext;
 import javax.servlet.ServletContext;
 
 
+import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.SystemUtils;
 import org.apache.commons.lang3.SystemUtils;
 import org.codelibs.core.lang.StringUtil;
 import org.codelibs.core.lang.StringUtil;
@@ -68,10 +69,6 @@ public class CrawlJob {
 
 
     protected int documentExpires = -2;
     protected int documentExpires = -2;
 
 
-    protected int retryCountToDeleteTempDir = 10;
-
-    protected long retryIntervalToDeleteTempDir = 5000;
-
     protected boolean useLocalElasticsearch = true;
     protected boolean useLocalElasticsearch = true;
 
 
     protected String jvmOptions;
     protected String jvmOptions;
@@ -128,12 +125,6 @@ public class CrawlJob {
         return this;
         return this;
     }
     }
 
 
-    public CrawlJob retryToDeleteTempDir(final int retryCount, final long retryInterval) {
-        retryCountToDeleteTempDir = retryCount;
-        retryIntervalToDeleteTempDir = retryInterval;
-        return this;
-    }
-
     public CrawlJob useLocaleElasticsearch(final boolean useLocaleElasticsearch) {
     public CrawlJob useLocaleElasticsearch(final boolean useLocaleElasticsearch) {
         this.useLocalElasticsearch = useLocaleElasticsearch;
         this.useLocalElasticsearch = useLocaleElasticsearch;
         return this;
         return this;
@@ -443,17 +434,9 @@ public class CrawlJob {
         if (ownTmpDir == null) {
         if (ownTmpDir == null) {
             return;
             return;
         }
         }
-        for (int i = 0; i < retryCountToDeleteTempDir; i++) {
-            if (ownTmpDir.delete()) {
-                return;
-            }
-            try {
-                Thread.sleep(retryIntervalToDeleteTempDir);
-            } catch (final InterruptedException e) {
-                // ignore
-            }
+        if (!FileUtils.deleteQuietly(ownTmpDir)) {
+            logger.warn("Could not delete a temp dir: " + ownTmpDir.getAbsolutePath());
         }
         }
-        logger.warn("Could not delete a temp dir: " + ownTmpDir.getAbsolutePath());
     }
     }
 
 
     protected void appendJarFile(final String cpSeparator, final StringBuilder buf, final File libDir, final String basePath) {
     protected void appendJarFile(final String cpSeparator, final StringBuilder buf, final File libDir, final String basePath) {

+ 3 - 20
src/main/java/org/codelibs/fess/job/SuggestJob.java

@@ -28,6 +28,7 @@ import java.util.Properties;
 
 
 import javax.servlet.ServletContext;
 import javax.servlet.ServletContext;
 
 
+import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.SystemUtils;
 import org.apache.commons.lang3.SystemUtils;
 import org.codelibs.core.lang.StringUtil;
 import org.codelibs.core.lang.StringUtil;
 import org.codelibs.fess.Constants;
 import org.codelibs.fess.Constants;
@@ -54,10 +55,6 @@ public class SuggestJob {
 
 
     protected String logLevel;
     protected String logLevel;
 
 
-    protected int retryCountToDeleteTempDir = 10;
-
-    protected long retryIntervalToDeleteTempDir = 5000;
-
     public SuggestJob jobExecutor(final JobExecutor jobExecutor) {
     public SuggestJob jobExecutor(final JobExecutor jobExecutor) {
         this.jobExecutor = jobExecutor;
         this.jobExecutor = jobExecutor;
         return this;
         return this;
@@ -78,12 +75,6 @@ public class SuggestJob {
         return this;
         return this;
     }
     }
 
 
-    public SuggestJob retryToDeleteTempDir(final int retryCount, final long retryInterval) {
-        retryCountToDeleteTempDir = retryCount;
-        retryIntervalToDeleteTempDir = retryInterval;
-        return this;
-    }
-
     public SuggestJob useLocaleElasticsearch(final boolean useLocaleElasticsearch) {
     public SuggestJob useLocaleElasticsearch(final boolean useLocaleElasticsearch) {
         this.useLocaleElasticsearch = useLocaleElasticsearch;
         this.useLocaleElasticsearch = useLocaleElasticsearch;
         return this;
         return this;
@@ -288,17 +279,9 @@ public class SuggestJob {
         if (ownTmpDir == null) {
         if (ownTmpDir == null) {
             return;
             return;
         }
         }
-        for (int i = 0; i < retryCountToDeleteTempDir; i++) {
-            if (ownTmpDir.delete()) {
-                return;
-            }
-            try {
-                Thread.sleep(retryIntervalToDeleteTempDir);
-            } catch (final InterruptedException e) {
-                // ignore
-            }
+        if (!FileUtils.deleteQuietly(ownTmpDir)) {
+            logger.warn("Could not delete a temp dir: " + ownTmpDir.getAbsolutePath());
         }
         }
-        logger.warn("Could not delete a temp dir: " + ownTmpDir.getAbsolutePath());
     }
     }
 
 
     protected void appendJarFile(final String cpSeparator, final StringBuilder buf, final File libDir, final String basePath) {
     protected void appendJarFile(final String cpSeparator, final StringBuilder buf, final File libDir, final String basePath) {