[exo-jcr-commits] exo-jcr SVN: r523 - jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache.

do-not-reply at jboss.org do-not-reply at jboss.org
Mon Nov 9 10:53:08 EST 2009


Author: skabashnyuk
Date: 2009-11-09 10:53:08 -0500 (Mon, 09 Nov 2009)
New Revision: 523

Modified:
   jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/IndexerCacheLoaderTest.java
Log:
EXOJCR-202 : add node test

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 15:36:43 UTC (rev 522)
+++ jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/IndexerCacheLoaderTest.java	2009-11-09 15:53:08 UTC (rev 523)
@@ -18,6 +18,33 @@
  */
 package org.exoplatform.services.jcr.impl.storage.jbosscache;
 
+import org.exoplatform.services.jcr.access.AccessControlList;
+import org.exoplatform.services.jcr.datamodel.InternalQName;
+import org.exoplatform.services.jcr.datamodel.NodeData;
+import org.exoplatform.services.jcr.datamodel.PropertyData;
+import org.exoplatform.services.jcr.datamodel.QPath;
+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.jcr.impl.dataflow.TransientPropertyData;
+import org.jboss.cache.Modification;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import javax.jcr.Node;
+import javax.jcr.PropertyType;
+import javax.jcr.RepositoryException;
+import javax.jcr.query.InvalidQueryException;
+import javax.jcr.query.Query;
+
 /**
  * @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 $
@@ -25,5 +52,135 @@
  */
 public class IndexerCacheLoaderTest extends AbstractCacheLoaderTest
 {
+   private IndexerCacheLoader indexerCacheLoader;
 
+   private DummySearchManager searchManager;
+
+   /**
+    * @see junit.framework.TestCase#setUp()
+    */
+   @Override
+   protected void setUp() throws Exception
+   {
+      // TODO Auto-generated method stub
+      super.setUp();
+      searchManager = new DummySearchManager();
+      indexerCacheLoader = new IndexerCacheLoader();
+      indexerCacheLoader.registerSearchManager(searchManager);
+   }
+
+   /**
+    * Add new Node
+    */
+   public void testAddNode() throws Exception
+   {
+      QPath node1path = QPath.parse("[]:1[]node:1");
+      NodeData newNode =
+         new TransientNodeData(node1path, "n123456", 1, Constants.NT_UNSTRUCTURED, new InternalQName[0], 0,
+            Constants.ROOT_UUID, new AccessControlList());
+
+      QPath prop1path = QPath.makeChildPath(node1path, Constants.JCR_PRIMARYTYPE);
+      PropertyData newProperty =
+         new TransientPropertyData(prop1path, "p123456", 0, PropertyType.NAME, "n123456", false);
+
+      List<Modification> modification = new ArrayList<Modification>();
+
+      modification.add(addNode(newNode));
+      modification.add(addProperty(newProperty));
+      indexerCacheLoader.put(modification);
+      assertNotNull(searchManager.getAddedNodes());
+      assertNotNull(searchManager.getRemovedNodes());
+   }
+
+   private class DummySearchManager implements SearchManager
+   {
+
+      private Set<String> removedNodes;
+
+      private Set<String> addedNodes;
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#createQuery(org.exoplatform.services.jcr.impl.core.SessionImpl, org.exoplatform.services.jcr.impl.core.SessionDataManager, javax.jcr.Node)
+       */
+      public Query createQuery(SessionImpl session, SessionDataManager sessionDataManager, Node node)
+         throws InvalidQueryException, RepositoryException
+      {
+         // TODO Auto-generated method stub
+         return null;
+      }
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#createQuery(org.exoplatform.services.jcr.impl.core.SessionImpl, org.exoplatform.services.jcr.impl.core.SessionDataManager, java.lang.String, java.lang.String)
+       */
+      public Query createQuery(SessionImpl session, SessionDataManager sessionDataManager, String statement,
+         String language) throws InvalidQueryException, RepositoryException
+      {
+         // TODO Auto-generated method stub
+         return null;
+      }
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#getFieldNames()
+       */
+      public Set<String> getFieldNames() throws IndexException
+      {
+         // TODO Auto-generated method stub
+         return null;
+      }
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#getHandler()
+       */
+      public QueryHandler getHandler()
+      {
+         // TODO Auto-generated method stub
+         return null;
+      }
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#getNodesByNodeType(org.exoplatform.services.jcr.datamodel.InternalQName)
+       */
+      public Set<String> getNodesByNodeType(InternalQName nodeType) throws RepositoryException
+      {
+         // TODO Auto-generated method stub
+         return null;
+      }
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#getNodesByUri(java.lang.String)
+       */
+      public Set<String> getNodesByUri(String uri) throws RepositoryException
+      {
+         // TODO Auto-generated method stub
+         return null;
+      }
+
+      /**
+       * @see org.exoplatform.services.jcr.impl.core.query.SearchManager#updateIndex(java.util.Set, java.util.Set)
+       */
+      public void updateIndex(Set<String> removedNodes, Set<String> addedNodes) throws RepositoryException, IOException
+      {
+         this.removedNodes = removedNodes;
+         // TODO Auto-generated method stub
+         this.addedNodes = addedNodes;
+
+      }
+
+      /**
+       * @return the removedNodes
+       */
+      public Set<String> getRemovedNodes()
+      {
+         return removedNodes;
+      }
+
+      /**
+       * @return the addedNodes
+       */
+      public Set<String> getAddedNodes()
+      {
+         return addedNodes;
+      }
+
+   }
 }



More information about the exo-jcr-commits mailing list