Author: sergiykarpenko
Date: 2009-11-09 07:16:49 -0500 (Mon, 09 Nov 2009)
New Revision: 506
Modified:
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/IndexerCacheLoaderTest.java
Log:
EXOJCR-202: IndexerCacheLoaderTest updated
Modified:
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/IndexerCacheLoaderTest.java
===================================================================
---
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/IndexerCacheLoaderTest.java 2009-11-09
11:37:43 UTC (rev 505)
+++
jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/IndexerCacheLoaderTest.java 2009-11-09
12:16:49 UTC (rev 506)
@@ -21,14 +21,27 @@
import org.exoplatform.services.jcr.access.AccessControlList;
import org.exoplatform.services.jcr.datamodel.InternalQName;
import org.exoplatform.services.jcr.impl.Constants;
+import org.exoplatform.services.jcr.impl.core.SessionDataManager;
+import org.exoplatform.services.jcr.impl.core.SessionImpl;
+import org.exoplatform.services.jcr.impl.core.query.IndexException;
+import org.exoplatform.services.jcr.impl.core.query.QueryHandler;
+import org.exoplatform.services.jcr.impl.core.query.SearchManager;
+import org.exoplatform.services.jcr.impl.core.query.cacheloader.IndexerCacheLoader;
import org.exoplatform.services.jcr.impl.dataflow.TransientNodeData;
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
import org.jboss.cache.Modification;
import org.jboss.cache.config.CacheLoaderConfig.IndividualCacheLoaderConfig;
+import java.io.IOException;
import java.util.List;
+import java.util.Set;
+import javax.jcr.Node;
+import javax.jcr.RepositoryException;
+import javax.jcr.query.InvalidQueryException;
+import javax.jcr.query.Query;
+
/**
* @author <a href="mailto:Sergey.Kabashnyuk@exoplatform.org">Sergey
Kabashnyuk</a>
* @version $Id: exo-jboss-codetemplates.xml 34360 2009-07-22 23:58:59Z ksm $
@@ -38,12 +51,76 @@
{
private final Log log = ExoLogger.getLogger(IndexerCacheLoaderTest.class.getName());
+ private IndexerCacheLoader loader;
+
+ private FakeSearchManager manager;
+
+ class FakeSearchManager implements SearchManager
+ {
+
+ private Set<String> removedNodes;
+
+ private Set<String> addedNodes;
+
+ public Query createQuery(SessionImpl session, SessionDataManager
sessionDataManager, Node node)
+ throws InvalidQueryException, RepositoryException
+ {
+ return null;
+ }
+
+ public Query createQuery(SessionImpl session, SessionDataManager
sessionDataManager, String statement,
+ String language) throws InvalidQueryException, RepositoryException
+ {
+ return null;
+ }
+
+ public Set<String> getFieldNames() throws IndexException
+ {
+ return null;
+ }
+
+ public QueryHandler getHandler()
+ {
+ return null;
+ }
+
+ public Set<String> getNodesByNodeType(InternalQName nodeType) throws
RepositoryException
+ {
+ return null;
+ }
+
+ public Set<String> getNodesByUri(String uri) throws RepositoryException
+ {
+ return null;
+ }
+
+ public void updateIndex(Set<String> removedNodes, Set<String>
addedNodes) throws RepositoryException, IOException
+ {
+ this.removedNodes = removedNodes;
+ this.addedNodes = addedNodes;
+ }
+
+ public Set<String> getRemovedNodes()
+ {
+ return removedNodes;
+ }
+
+ public Set<String> getAddedNodes()
+ {
+ return addedNodes;
+ }
+ }
+
public void testAddRoot() throws Exception
{
// add root (/)
jBossCacheStorageConnection.add(new TransientNodeData(Constants.ROOT_PATH,
Constants.ROOT_UUID, 1,
Constants.NT_UNSTRUCTURED, new InternalQName[0], 0, null, new
AccessControlList()));
jBossCacheStorageConnection.commit();
+
+ assertTrue(manager.getRemovedNodes().isEmpty());
+ assertFalse(manager.getAddedNodes().isEmpty());
+
}
/**
@@ -53,7 +130,10 @@
protected IndividualCacheLoaderConfig createIndividualCacheLoaderConfig()
{
IndividualCacheLoaderConfig individualCacheLoaderConfig = new
IndividualCacheLoaderConfig();
- individualCacheLoaderConfig.setCacheLoader(new DummyCacheLoader());
+ loader = new IndexerCacheLoader();
+ manager = new FakeSearchManager();
+ loader.registerSearchManager(manager);
+ individualCacheLoaderConfig.setCacheLoader(loader);
return individualCacheLoaderConfig;
}
@@ -71,4 +151,9 @@
}
}
+
+ public void testAddNode() throws Exception
+ {
+
+ }
}