[exo-jcr-commits] exo-jcr SVN: r1215 - in jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query: lucene and 1 other directory.
do-not-reply at jboss.org
do-not-reply at jboss.org
Mon Dec 28 09:58:50 EST 2009
Author: skabashnyuk
Date: 2009-12-28 09:58:50 -0500 (Mon, 28 Dec 2009)
New Revision: 1215
Modified:
jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexChangesFilter.java
jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexUpdateMonitor.java
jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/DefaultIndexUpdateMonitor.java
jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/IndexUpdateMonitor.java
jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java
Log:
EXOJCR-331 : add IndexerIoMode to JbossCacheIndexUpdateMonitor
Modified: jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexChangesFilter.java
===================================================================
--- jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexChangesFilter.java 2009-12-28 14:55:23 UTC (rev 1214)
+++ jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexChangesFilter.java 2009-12-28 14:58:50 UTC (rev 1215)
@@ -123,14 +123,14 @@
{
// TODO: uncomment it, when JbossCacheIndexInfos is finished.
parentHandler.setIndexInfos(new JbossCacheIndexInfos(cache, true, ioMode));
- parentHandler.setIndexUpdateMonitor(new JbossCacheIndexUpdateMonitor(cache));
+ parentHandler.setIndexUpdateMonitor(new JbossCacheIndexUpdateMonitor(cache, ioMode));
parentHandler.init();
}
if (!handler.isInitialized())
{
// TODO: uncomment it, when JbossCacheIndexInfos is finished.
handler.setIndexInfos(new JbossCacheIndexInfos(cache, false, ioMode));
- handler.setIndexUpdateMonitor(new JbossCacheIndexUpdateMonitor(cache));
+ handler.setIndexUpdateMonitor(new JbossCacheIndexUpdateMonitor(cache, ioMode));
handler.init();
}
Modified: jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexUpdateMonitor.java
===================================================================
--- jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexUpdateMonitor.java 2009-12-28 14:55:23 UTC (rev 1214)
+++ jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/jbosscache/JbossCacheIndexUpdateMonitor.java 2009-12-28 14:58:50 UTC (rev 1215)
@@ -18,6 +18,7 @@
*/
package org.exoplatform.services.jcr.impl.core.query.jbosscache;
+import org.exoplatform.services.jcr.impl.core.query.IndexerIoMode;
import org.exoplatform.services.jcr.impl.core.query.lucene.IndexUpdateMonitor;
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
@@ -25,6 +26,7 @@
import org.jboss.cache.CacheSPI;
import org.jboss.cache.Fqn;
+import java.io.IOException;
import java.io.Serializable;
import javax.transaction.RollbackException;
@@ -49,13 +51,19 @@
private final static String PARAMETER_NAME = "index-update-in-progress";
+ public IndexerIoMode ioMode;
+
/**
* @param cache instance of JbossCache that is used to deliver index names
*/
- public JbossCacheIndexUpdateMonitor(Cache<Serializable, Object> cache)
+ public JbossCacheIndexUpdateMonitor(Cache<Serializable, Object> cache, IndexerIoMode ioMode)
{
this.cache = cache;
- setUpdateInProgress(false);
+ this.ioMode = ioMode;
+ if (IndexerIoMode.READ_WRITE == ioMode)
+ {
+ setUpdateInProgress(false);
+ }
}
@@ -73,6 +81,11 @@
*/
public void setUpdateInProgress(boolean updateInProgress)
{
+ if (IndexerIoMode.READ_ONLY == ioMode)
+ {
+ throw new IllegalStateException("Unable to set updateInProgress value in IndexerIoMode.READ_ONLY mode");
+ }
+
log.info("setUpdateInProgress=" + updateInProgress);
TransactionManager tm = ((CacheSPI<Serializable, Object>)cache).getTransactionManager();
try
@@ -109,4 +122,14 @@
}
}
+
+ /**
+ * Sets {@link IndexerIoMode} to indexInfos;
+ * @param ioMode
+ * @throws IOException
+ */
+ public void setIoMode(IndexerIoMode ioMode) throws IOException
+ {
+ this.ioMode = ioMode;
+ }
}
Modified: jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/DefaultIndexUpdateMonitor.java
===================================================================
--- jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/DefaultIndexUpdateMonitor.java 2009-12-28 14:55:23 UTC (rev 1214)
+++ jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/DefaultIndexUpdateMonitor.java 2009-12-28 14:58:50 UTC (rev 1215)
@@ -18,6 +18,9 @@
*/
package org.exoplatform.services.jcr.impl.core.query.lucene;
+import org.exoplatform.services.jcr.impl.core.query.IndexerIoMode;
+
+import java.io.IOException;
import java.util.concurrent.atomic.AtomicBoolean;
/**
@@ -29,6 +32,8 @@
{
private AtomicBoolean updateInProgress;
+ private IndexerIoMode ioMode;
+
/**
* @param semaphore
*/
@@ -56,4 +61,13 @@
{
this.updateInProgress.set(updateInProgress);
}
+
+ /**
+ * @see org.exoplatform.services.jcr.impl.core.query.lucene.IndexUpdateMonitor#setIoMode(org.exoplatform.services.jcr.impl.core.query.IndexerIoMode)
+ */
+ public void setIoMode(IndexerIoMode ioMode) throws IOException
+ {
+ this.ioMode = ioMode;
+ }
+
}
Modified: jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/IndexUpdateMonitor.java
===================================================================
--- jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/IndexUpdateMonitor.java 2009-12-28 14:55:23 UTC (rev 1214)
+++ jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/IndexUpdateMonitor.java 2009-12-28 14:58:50 UTC (rev 1215)
@@ -18,6 +18,10 @@
*/
package org.exoplatform.services.jcr.impl.core.query.lucene;
+import org.exoplatform.services.jcr.impl.core.query.IndexerIoMode;
+
+import java.io.IOException;
+
/**
* @author <a href="mailto:Sergey.Kabashnyuk at exoplatform.org">Sergey Kabashnyuk</a>
* @version $Id: exo-jboss-codetemplates.xml 34360 2009-07-22 23:58:59Z ksm $
@@ -35,4 +39,11 @@
*/
void setUpdateInProgress(boolean updateInProgress);
+ /**
+ * Sets {@link IndexerIoMode} to indexInfos;
+ * @param ioMode
+ * @throws IOException
+ */
+ public void setIoMode(IndexerIoMode ioMode) throws IOException;
+
}
\ No newline at end of file
Modified: jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java
===================================================================
--- jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java 2009-12-28 14:55:23 UTC (rev 1214)
+++ jcr/branches/1.12.0-JBCCACHE/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java 2009-12-28 14:58:50 UTC (rev 1215)
@@ -2358,6 +2358,7 @@
{
this.ioMode = ioMode;
indexNames.setIoMode(ioMode);
+ indexUpdateMonitor.setIoMode(ioMode);
switch (ioMode)
{
case READ_ONLY :
More information about the exo-jcr-commits
mailing list