[exo-jcr-commits] exo-jcr SVN: r5824 - jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Mar 6 10:56:20 EST 2012


Author: tolusha
Date: 2012-03-06 10:56:19 -0500 (Tue, 06 Mar 2012)
New Revision: 5824

Modified:
   jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java
Log:
EXOJCR-1797: Exception while stopping AS

Modified: jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java
===================================================================
--- jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java	2012-03-06 15:56:08 UTC (rev 5823)
+++ jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java	2012-03-06 15:56:19 UTC (rev 5824)
@@ -84,7 +84,16 @@
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
 import java.security.PrivilegedAction;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.CountDownLatch;
 
 import javax.jcr.RepositoryException;
@@ -1219,37 +1228,40 @@
     */
    public void close()
    {
-      // cleanup resources obtained by filters
-      if (recoveryFilters != null)
+      if (!closed)
       {
-         for (AbstractRecoveryFilter filter : recoveryFilters)
+         // cleanup resources obtained by filters
+         if (recoveryFilters != null)
          {
-            filter.close();
+            for (AbstractRecoveryFilter filter : recoveryFilters)
+            {
+               filter.close();
+            }
+            recoveryFilters.clear();
+            recoveryFilters = null;
          }
-         recoveryFilters.clear();
-         recoveryFilters = null;
-      }
 
-      if (synonymProviderConfigFs != null)
-      {
-         try
+         if (synonymProviderConfigFs != null)
          {
-            synonymProviderConfigFs.close();
+            try
+            {
+               synonymProviderConfigFs.close();
+            }
+            catch (IOException e)
+            {
+               log.warn("Exception while closing FileSystem", e);
+            }
          }
-         catch (IOException e)
+         if (spellChecker != null)
          {
-            log.warn("Exception while closing FileSystem", e);
+            spellChecker.close();
          }
+         errorLog.close();
+         index.close();
+         getContext().destroy();
+         closed = true;
+         log.info("Index closed: " + path);
       }
-      if (spellChecker != null)
-      {
-         spellChecker.close();
-      }
-      errorLog.close();
-      index.close();
-      getContext().destroy();
-      closed = true;
-      log.info("Index closed: " + path);
    }
 
    /**
@@ -1958,9 +1970,9 @@
                            //t = field.tokenStreamValue().next(t);
                            field.tokenStreamValue().incrementToken();
                            TermAttribute term =
-                              (TermAttribute)field.tokenStreamValue().getAttribute(TermAttribute.class);
+                              field.tokenStreamValue().getAttribute(TermAttribute.class);
                            PayloadAttribute payload =
-                              (PayloadAttribute)field.tokenStreamValue().getAttribute(PayloadAttribute.class);
+                              field.tokenStreamValue().getAttribute(PayloadAttribute.class);
 
                            String value = new String(t.termBuffer(), 0, t.termLength());
                            if (value.startsWith(namePrefix))



More information about the exo-jcr-commits mailing list