Author: dkuleshov
Date: 2011-08-30 09:21:51 -0400 (Tue, 30 Aug 2011)
New Revision: 4812
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/ErrorLog.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/spell/LuceneSpellChecker.java
Log:
EXOJCR-1445: removed unnecessary privileged wrappings, possible cause of regression
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/ErrorLog.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/ErrorLog.java 2011-08-30
13:12:37 UTC (rev 4811)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/ErrorLog.java 2011-08-30
13:21:51 UTC (rev 4812)
@@ -18,6 +18,7 @@
package org.exoplatform.services.jcr.impl.core.query;
import org.exoplatform.commons.utils.PrivilegedFileHelper;
+import org.exoplatform.commons.utils.SecurityHelper;
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
@@ -29,6 +30,7 @@
import java.io.InputStreamReader;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
+import java.security.PrivilegedExceptionAction;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -97,22 +99,28 @@
*/
private void openFile(final File log) throws IOException
{
- // set file size;
- if (!PrivilegedFileHelper.exists(log))
+ SecurityHelper.doPrivilegedIOExceptionAction(new
PrivilegedExceptionAction<Void>()
{
- PrivilegedFileHelper.mkdirs(log.getParentFile());
- PrivilegedFileHelper.createNewFile(log);
-
- out = PrivilegedFileHelper.fileOutputStream(log).getChannel();
- out.position(1024 * fileSize - 1);
- out.write(ByteBuffer.wrap(new byte[]{0}));
- out.position(0);
- out.force(false);
- }
- else
- {
- out = PrivilegedFileHelper.fileOutputStream(log, true).getChannel();
- }
+ public Void run() throws Exception
+ {
+ // set file size;
+ if (!log.exists())
+ {
+ log.getParentFile().mkdirs();
+ log.createNewFile();
+ out = new FileOutputStream(log).getChannel();
+ out.position(1024 * fileSize - 1);
+ out.write(ByteBuffer.wrap(new byte[]{0}));
+ out.position(0);
+ out.force(false);
+ }
+ else
+ {
+ out = new FileOutputStream(log, true).getChannel();
+ }
+ return null;
+ }
+ });
}
/**
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/spell/LuceneSpellChecker.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/spell/LuceneSpellChecker.java 2011-08-30
13:12:37 UTC (rev 4811)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/spell/LuceneSpellChecker.java 2011-08-30
13:21:51 UTC (rev 4812)
@@ -507,16 +507,9 @@
try
{
long time = System.currentTimeMillis();
- final Dictionary dict = new LuceneDictionary(reader,
FieldNames.FULLTEXT);
+ Dictionary dict = new LuceneDictionary(reader,
FieldNames.FULLTEXT);
log.debug("Starting spell checker index
refresh");
- SecurityHelper.doPrivilegedIOExceptionAction(new
PrivilegedExceptionAction<Void>()
- {
- public Void run() throws IOException
- {
- spellChecker.indexDictionary(dict);
- return null;
- }
- });
+ spellChecker.indexDictionary(dict);
time = System.currentTimeMillis() - time;
time = time / 1000;
log.info("Spell checker index refreshed in:
" + new Long(time) + " s.");
Show replies by date