[infinispan-commits] Infinispan SVN: r510 - in branches/ISPN-32/query: src/main/java/org/infinispan/query and 1 other directory.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Wed Jul 1 08:49:56 EDT 2009


Author: navssurtani
Date: 2009-07-01 08:49:55 -0400 (Wed, 01 Jul 2009)
New Revision: 510

Added:
   branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityLoader.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreInterceptor.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityId.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityIdImpl.java
Removed:
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreRemover.java
Modified:
   branches/ISPN-32/query/pom.xml
   branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityId.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityLoader.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQuery.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQueryImpl.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityId.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/IndexSearcherCloser.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidFqnException.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidKeyException.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/LazyQueryResultIterator.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIterator.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIteratorImpl.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCache.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheConfiguration.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheFactory.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheImpl.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreListener.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/Transformer.java
   branches/ISPN-32/query/src/main/java/org/infinispan/query/Version.java
Log:
[ISPN-32] WIP

Modified: branches/ISPN-32/query/pom.xml
===================================================================
--- branches/ISPN-32/query/pom.xml	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/pom.xml	2009-07-01 12:49:55 UTC (rev 510)
@@ -26,6 +26,12 @@
 		<artifactId> hibernate-search</artifactId> 
 		<version>3.1.1.GA</version> 
 	  </dependency>
+	
+      <dependency>
+         <groupId>${project-package}</groupId>
+         <artifactId>infinispan-tree</artifactId>
+         <version>${project-version}</version>
+   	  </dependency>
 
       <dependency>
          <groupId>${project-package}</groupId>
@@ -34,5 +40,15 @@
          <type>test-jar</type>
          <scope>test</scope>
       </dependency>
+
+      <dependency>
+         <groupId>${project-package}</groupId>
+         <artifactId>infinispan-tree</artifactId>
+         <version>${project-version}</version>
+         <type>test-jar</type>
+         <scope>test</scope>
+      </dependency>
+
+
    </dependencies>
 </project>

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityId.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityId.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityId.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,37 +20,26 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
-import org.jboss.cache.Fqn;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 /**
  *
- * This class is used to get fqns, keys and documentId's by calling methods on {@link org.jboss.cache.search.Transformer}
+ * This class is used to store keys which are the same as documentId's.
  * <p/>
- * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
+ * @author Navin Surtani
  */
-public class CacheEntityId extends PojoEntityId
+public class CacheEntityId implements EntityId
 {
    private static final Log log = LogFactory.getLog(CacheEntityId.class);
 
-   String key;
+   protected String key;
 
-   public CacheEntityId(String documentId)
+   public CacheEntityId(String key)
    {
-      super(documentId);
-//      if (log.isDebugEnabled()) log.debug("Called CEI constructor using documentID constructor. DocId is " + documentId);
-   }
-
-   public CacheEntityId(Fqn fqn, String key) throws InvalidKeyException
-   {
-      super(fqn);
-//      if (log.isDebugEnabled()) log.debug("Called CEI constructor using fqn, key constructor. Fqn & key are " + fqn + key);
-      if(key == null) throw new NullPointerException("Key is null");
       this.key = key;
-      this.documentId = Transformer.generateId(fqn, key);
    }
 
    /**
@@ -61,36 +50,8 @@
 
    public String getKey()
    {
-      if (key != null) return key;
-      if (documentId != null)
-      {
-         key = Transformer.getKey(documentId);
-         return key;
-      }
-
-      throw new IllegalArgumentException("At least key or documentId must be set to call this method");
+        return key;
    }
 
-   /**
-    * Gets a documentId String from an Fqn and key combination.
-    *
-    * @return documentId String.
-    */
 
-   public String getDocumentId() throws InvalidKeyException
-   {
-      if (key == null || fqn == null)
-      {
-         throw new IllegalArgumentException("Either your key or fqn is null. Please check again.");
-      }
-
-      return Transformer.generateId(fqn, key);
-   }
-
-   public Fqn getFqn()
-   {
-//    if (log.isWarnEnabled()) log.warn("getFqn() called with fqn of " + fqn + " so my documentId should be " + documentId);
-
-    return Transformer.getFqn(documentId);
-   }
 }

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityLoader.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityLoader.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheEntityLoader.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,63 +20,61 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
-import org.jboss.cache.Cache;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.infinispan.Cache;
 
-import java.util.List;
 import java.util.ArrayList;
+import java.util.List;
 
 /**
  * Class that is used to load objects from a list of CacheEntityId ids.
  * <p/>
- * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
+ *
+ * @author Navin Surtani
  */
-public class CacheEntityLoader
-{
+public class CacheEntityLoader implements EntityLoader {
    Cache cache;
    private static final Log log = LogFactory.getLog(CacheEntityLoader.class);
 
-   public CacheEntityLoader(Cache cache)
-   {
+   public CacheEntityLoader(Cache cache) {
       this.cache = cache;
    }
 
    /**
     * Takes a list of entity ids and gets them from the cache.
+    *
     * @param ids list of cache entity IDs.  Cannot be null.
-    * @return List of objects loaded from the cache.  The list returned will be exactly the same size as the ids list passed in.
+    * @return List of objects loaded from the cache.  The list returned will be exactly the same size as the ids list
+    *         passed in.
     * @throws NullPointerException if ids is null.
     */
-   public List<Object> load(List<EntityId> ids)
-   {
+   public List<Object> load(List<EntityId> ids) {
       if (ids == null) throw new NullPointerException("ids are null");
-      List<Object> retVal = new ArrayList<Object>(ids.size());
+      List<Object> objectsToReturn = new ArrayList<Object>(ids.size());
 
-      for (EntityId id: ids)
-      {
-         retVal.add( loadFromCache(id) );
-         if(log.isTraceEnabled()) log.trace("Created list of return values. Size is  " + retVal.size() );         
+      for (EntityId id : ids) {
+         objectsToReturn.add(loadFromCache(id));
+         if (log.isTraceEnabled()) log.trace("Created list of return values. Size is  " + objectsToReturn.size());
       }
-      return retVal;
+      return objectsToReturn;
    }
 
-   protected Object loadFromCache(EntityId id)
-   {
+   protected Object loadFromCache(EntityId id) {
       CacheEntityId cei = (CacheEntityId) id;
-      return cache.get(cei.getFqn(), cei.getKey());
+      return cache.get(cei.getKey());
    }
 
    /**
-    * Takes a list of entity ids and gets them from the cache.
+    * Takes a single entity id and gets it from the cache.
+    *
     * @param id cache entity id to look up in the cache.
     * @return the object from the cache, or null if one cannot be found.
     * @throws NullPointerException if ids is null.
     */
-   public Object load(EntityId id)
-   {
+   public Object load(EntityId id) {
       if (id == null) throw new NullPointerException("id is null");
       return loadFromCache(id);
    }

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQuery.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQuery.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQuery.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,10 +20,10 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
+import org.apache.lucene.search.Filter;
 import org.apache.lucene.search.Sort;
-import org.apache.lucene.search.Filter;
 import org.hibernate.search.FullTextFilter;
 
 import java.util.List;
@@ -35,7 +35,7 @@
  * <p/>
  * @author Manik Surtani (<a href="mailto:manik at jboss.org">manik at jboss.org</a>)
  * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
- * @see org.jboss.cache.search.SearchableCache#createQuery(org.apache.lucene.search.Query) 
+ * @see org.infinispan.query.SearchableCache#createQuery(org.apache.lucene.search.Query)
  */
 public interface CacheQuery extends Iterable
 {
@@ -48,7 +48,7 @@
    List<Object> list();
 
    /**
-    * Returns the results of a search as a {@link QueryResultIterator} with a given
+    * Returns the results of a search as a {@link org.infinispan.query.QueryResultIterator} with a given
     * integer parameter - the fetchSize.
     *
     * @param fetchSize integer to be given to the implementation constructor.
@@ -67,10 +67,10 @@
    QueryResultIterator iterator();
 
    /**
-    * Lazily loads the results from the Query as a {@link org.jboss.cache.search.QueryResultIterator} with a given
+    * Lazily loads the results from the Query as a {@link org.infinispan.query.QueryResultIterator} with a given
     * integer parameter - the fetchSize.
     *
-    * @param fetchSize integer to be passed into the lazy implementation of {@link org.jboss.cache.search.QueryResultIterator}
+    * @param fetchSize integer to be passed into the lazy implementation of {@link org.infinispan.query.QueryResultIterator}
     * @return a QueryResultIterator which can be used to <B>lazily</B> iterate through results.
     */
 

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQueryImpl.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQueryImpl.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/CacheQueryImpl.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,28 +20,33 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.Term;
-import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.search.*;
 import org.hibernate.HibernateException;
 import org.hibernate.search.FullTextFilter;
 import org.hibernate.search.SearchException;
-import org.hibernate.search.reader.ReaderProvider;
-import static org.hibernate.search.reader.ReaderProviderHelper.getIndexReaders;
-import static org.hibernate.search.util.FilterCacheModeTypeHelper.cacheInstance;
-import static org.hibernate.search.util.FilterCacheModeTypeHelper.cacheResults;
-import org.hibernate.search.engine.*;
+import org.hibernate.search.engine.DocumentBuilder;
+import org.hibernate.search.engine.DocumentBuilderIndexedEntity;
+import org.hibernate.search.engine.DocumentExtractor;
+import org.hibernate.search.engine.FilterDef;
+import org.hibernate.search.engine.SearchFactoryImplementor;
 import org.hibernate.search.filter.ChainedFilter;
 import org.hibernate.search.filter.FilterKey;
 import org.hibernate.search.filter.StandardFilterKey;
 import org.hibernate.search.query.FullTextFilterImpl;
 import org.hibernate.search.query.QueryHits;
+import org.hibernate.search.reader.ReaderProvider;
+import static org.hibernate.search.reader.ReaderProviderHelper.getIndexReaders;
 import org.hibernate.search.store.DirectoryProvider;
+import static org.hibernate.search.util.FilterCacheModeTypeHelper.cacheInstance;
+import static org.hibernate.search.util.FilterCacheModeTypeHelper.cacheResults;
 import org.hibernate.transform.ResultTransformer;
+import org.infinispan.Cache;
 import org.jboss.cache.Cache;
 import org.jboss.cache.pojo.PojoCache;
 

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityId.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityId.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityId.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -1,13 +1,11 @@
-package org.jboss.cache.search;
+package org.infinispan.query;
 
-import org.jboss.cache.Fqn;
 
 /**
  * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
  */
 public interface EntityId
 {
-   Fqn getFqn();
+   public String getKey();
 
-   String getDocumentId() throws InvalidKeyException;
 }

Added: branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityLoader.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityLoader.java	                        (rev 0)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/EntityLoader.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -0,0 +1,33 @@
+package org.infinispan.query;
+
+import java.util.List;
+
+/**
+ * // TODO: Document this
+ *
+ * @author Navin Surtani
+ * @since 4.0
+ */
+
+public interface EntityLoader {
+
+   /**
+    * Takes a list of  entity ids and gets them from the cache.
+    * @param ids - a list of cache entity ids to look up in the cache.
+    * @return a list of the objects from the cache.
+    * @throws NullPointerException if ids is null.
+    */
+
+
+   public List<Object> load(List<EntityId> ids);
+
+
+   /**
+    * Takes a single entity id and gets it from the cache.
+    * @param id cache entity id to look up in the cache.
+    * @return the object from the cache, or null if one cannot be found.
+    * @throws NullPointerException if ids is null.
+    */
+   public Object load(EntityId id);
+
+}

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/IndexSearcherCloser.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/IndexSearcherCloser.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/IndexSearcherCloser.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import org.hibernate.search.engine.SearchFactoryImplementor;
 import org.hibernate.search.reader.ReaderProvider;

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidFqnException.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidFqnException.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidFqnException.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,12 +20,12 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
-import org.jboss.cache.CacheException;
+import org.infinispan.CacheException;
 
 /**
- * Thrown when an invalid Fqn is passed into {@link org.jboss.cache.search.Transformer#generateId(org.jboss.cache.Fqn, String)}
+ * Thrown when an invalid Fqn is passed into {@link org.infinispan.query.Transformer#generateTreeId(org.infinispan.tree.Fqn, String)}
  * <p />
  * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
  */

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidKeyException.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidKeyException.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/InvalidKeyException.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 /**
  * * Thrown when an invalid Key is passed into {@link org.jboss.cache.search.Transformer#generateId(org.jboss.cache.Fqn, String)}

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/LazyQueryResultIterator.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/LazyQueryResultIterator.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/LazyQueryResultIterator.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,20 +20,20 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
+import org.apache.lucene.search.IndexSearcher;
 import org.hibernate.search.engine.DocumentExtractor;
 import org.hibernate.search.engine.SearchFactoryImplementor;
-import org.apache.lucene.search.IndexSearcher;
 
+import java.io.IOException;
+import java.util.Arrays;
 import java.util.NoSuchElementException;
-import java.util.Arrays;
-import java.io.IOException;
 
 /**
- * Implementation for {@link org.jboss.cache.search.QueryResultIterator}. This is what is returned when
+ * Implementation for {@link org.infinispan.query.QueryResultIterator}. This is what is returned when
  * the {@link CacheQuery#lazyIterator()} method is called. This loads the results only when required and hence differs from
- * {@link org.jboss.cache.search.QueryResultIteratorImpl} which is the other implementation of QueryResultIterator.
+ * {@link org.infinispan.query.QueryResultIteratorImpl} which is the other implementation of QueryResultIterator.
  *
  * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
  */

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIterator.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIterator.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIterator.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */ 
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import java.util.ListIterator;
 

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIteratorImpl.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIteratorImpl.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/QueryResultIteratorImpl.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 
 import org.apache.commons.logging.Log;

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCache.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCache.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCache.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,10 +20,10 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import org.apache.lucene.search.Query;
-import org.jboss.cache.Cache;
+import org.infinispan.Cache;
 
 /**
  * This will be the most used interface in JBossCache searchable. It extends Cache and therefore will have

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheConfiguration.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheConfiguration.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheConfiguration.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */ 
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import org.hibernate.search.cfg.SearchConfiguration;
 import org.hibernate.annotations.common.reflection.ReflectionManager;
@@ -31,10 +31,10 @@
 import java.util.HashMap;
 
 /**
- * Class that implements {@link org.hibernate.search.cfg.SearchConfiguration} so that within JBossCache Searchable, there is no
+ * Class that implements {@link org.hibernate.search.cfg.SearchConfiguration} so that within Infinispan-Query, there is no
  * need for a Hibernate Core configuration object.
  *
- * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
+ * @author Navin Surtani
  */
 public class SearchableCacheConfiguration implements SearchConfiguration
 {

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheFactory.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheFactory.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheFactory.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,19 +20,17 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
-import org.hibernate.search.impl.SearchFactoryImpl;
-import org.hibernate.search.cfg.SearchConfiguration;
-import org.hibernate.search.engine.SearchFactoryImplementor;
-import org.jboss.cache.Cache;
-import org.jboss.cache.CacheStatus;
-import org.jboss.cache.pojo.PojoCache;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.hibernate.search.cfg.SearchConfiguration;
+import org.hibernate.search.engine.SearchFactoryImplementor;
+import org.hibernate.search.impl.SearchFactoryImpl;
+import org.infinispan.Cache;
 
-import java.util.Properties;
 import java.lang.reflect.Field;
+import java.util.Properties;
 
 /**
  * Factory class used to create the searchable-cache like so: -

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheImpl.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheImpl.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCacheImpl.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import org.apache.lucene.search.Query;
 import org.hibernate.search.engine.SearchFactoryImplementor;

Added: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreInterceptor.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreInterceptor.java	                        (rev 0)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreInterceptor.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -0,0 +1,38 @@
+package org.infinispan.query;
+
+import org.hibernate.search.engine.SearchFactoryImplementor;
+import org.infinispan.commands.write.PutKeyValueCommand;
+import org.infinispan.context.InvocationContext;
+import org.infinispan.interceptors.base.CommandInterceptor;
+
+/**
+ * // TODO: Document this
+ *
+ * @author Navin Surtani
+ * @since 4.0
+ */
+
+public class SearchableCoreInterceptor extends CommandInterceptor {
+
+   private SearchFactoryImplementor searchFactory;
+
+   public SearchableCoreInterceptor(SearchFactoryImplementor searchFactory){
+      this.searchFactory = searchFactory;
+   }
+
+   @Override
+   public Object visitPutKeyValueCommand(InvocationContext ctx, PutKeyValueCommand command) throws Throwable {
+
+      log.debug("Entered the searchable core interceptor visitPutKeyValueCommand()");
+
+      // I think this is the equivalent of event.isPre()?
+      invokeNextInterceptor(ctx, command);
+
+      // getting the data of the put() command
+
+
+   }
+
+   @Override
+   public Object
+}

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreListener.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreListener.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreListener.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -95,7 +95,7 @@
          Map dataMap = event.getData();
          if (log.isTraceEnabled()) log.trace("Called event.getData() and saved to a Map");
 
-         TransactionContext ctx = new TransactionalEventTransactionContext(event);
+         TransactionContext ctx = new org.jboss.cache.search.TransactionalEventTransactionContext(event);
 
          for (Object key : dataMap.keySet())
          {
@@ -143,7 +143,7 @@
     */
 
 
-   protected void handlePutData(NodeModifiedEvent event, SearchFactoryImplementor searchFactory) throws InvalidKeyException
+   public void handlePutData(NodeModifiedEvent event, SearchFactoryImplementor searchFactory) throws InvalidKeyException
    {
       Map dataMap = event.getData();
       if (log.isTraceEnabled()) log.trace("Called event.getData() and saved to a Map");

Deleted: branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreRemover.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreRemover.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/SearchableCoreRemover.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -1,62 +0,0 @@
-package org.jboss.cache.search;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.hibernate.search.backend.TransactionContext;
-import org.hibernate.search.backend.Work;
-import org.hibernate.search.backend.WorkType;
-import org.hibernate.search.engine.SearchFactoryImplementor;
-import org.jboss.cache.notifications.annotation.CacheListener;
-import org.jboss.cache.notifications.annotation.NodeRemoved;
-import org.jboss.cache.notifications.event.NodeRemovedEvent;
-
-import java.util.Map;
-
-/**
- * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
- */
- at CacheListener
-public class SearchableCoreRemover
-{
-   private SearchFactoryImplementor searchFactory;
-   private static final Log log = LogFactory.getLog(SearchableCoreListener.class);
-
-   public SearchableCoreRemover(SearchFactoryImplementor searchFactory)
-   {
-      this.searchFactory = searchFactory;
-   }
-
-
-   @NodeRemoved
-   public void logEvent(NodeRemovedEvent event) throws InvalidKeyException
-   {
-      log.debug("Entered - SearchableCoreRemover with @NodeRemoved");
-      if (event.isPre())
-      {
-         System.out.println("Event isPre()");
-
-         // Directly going to handle the deletion of data.
-         Map dataMap = event.getData();
-         if (log.isTraceEnabled()) log.trace("Called event.getData() and saved to a Map");
-
-         TransactionContext ctx = new TransactionalEventTransactionContext(event);
-
-         for (Object key : dataMap.keySet())
-         {
-            CacheEntityId cacheEntityId = new CacheEntityId(event.getFqn(), (String) key);
-            if (log.isTraceEnabled()) log.trace("Created new CacheEntityId");
-
-            String fqnString = cacheEntityId.getFqn().toString();  // Vars for logging
-            String keyString = (String) key;
-
-
-            searchFactory.getWorker().performWork(new Work(dataMap.get(key), cacheEntityId.getDocumentId(), WorkType.DELETE), ctx);
-
-            if (log.isTraceEnabled())
-            {
-               log.debug("Added your object into Lucene with Fqn " + fqnString + " and key " + keyString);
-            }
-         }
-     }
-   }
-}

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/Transformer.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/Transformer.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/Transformer.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -20,19 +20,19 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */ 
 
-package org.jboss.cache.search;
+package org.infinispan.query;
 
-import org.jboss.cache.Fqn;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.infinispan.tree.Fqn;
 
 /**
 *
-* This class is one that does all the 'conversion' work between JBossCache and Hibernate Search. This is where
-* users can switch from Fqn and key to a documentId and vice versa.
+* This class is one that does all the 'conversion' work between Infinispan and Hibernate Search. This is where
+* users can switch from Fqn and key to a documentId and vice versa. Methods on this class should *only* be used with the tree cache.
 *
 * If the Fqn is in the form /a/b/c and the key - which has to be a String - is keystring; the documentId - which is also
-* a String - will be "Fqn=[/a/b/c]Key=[keystring]"
+* a String - will be "Fqn=[/a/b/c]Key=[keystring]".
 *
 * @author Navin Surtani (<a href="mailto:nsurtani at redhat.com">nsurtani at redhat.com</a>)
 */
@@ -41,14 +41,14 @@
    private static final Log log = LogFactory.getLog(Transformer.class);
 
    /**
-    * Takes in the documentId string from the user and will return the key from the Fqn, key combination.
+    * Takes in the documentId string from the user and will return the key from the Fqn, key combination. For tree cache only!
     *
     *
     * @param docId - for the keystring to be obtained
     * @return keystring.
     */
 
-   public static String getKey(String docId)
+   public static String getTreeKey(String docId)
    {
       //docID comes in the format "Fqn=[/a/b/c]Key=[key]"
 
@@ -69,14 +69,14 @@
    }
 
    /**
-    * Takes in the documentId string from the user and will return the Fqn from the Fqn, key combination.
+    * Takes in the documentId string from the user and will return the Fqn from the Fqn, key combination. For tree cache only!
     *
     * @param docId - for the Fqn to be obtained
     * @return Fqn from the documentId.
     */
 
 
-   public static Fqn getFqn(String docId)
+   public static Fqn getTreeFqn(String docId)
    {
       //docId comes in the format "Fqn=[/a/b/c]Key=[key]"
 
@@ -100,7 +100,7 @@
    }
 
    /**
-    * Generates the documentId from an Fqn, key combination.
+    * Generates the documentId from an Fqn, key combination. For tree cache only!
     *
     *
     * @param fqn - standard call Fqn.fromString()
@@ -109,7 +109,7 @@
     * @throws InvalidFqnException
     */
 
-   public static String generateId(Fqn fqn, String key) throws InvalidFqnException, InvalidKeyException
+   public static String generateTreeId(Fqn fqn, String key) throws InvalidFqnException, InvalidKeyException
    {
       if (key == null) throw new NullPointerException("Key passed in cannot be null!");
 

Added: branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityId.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityId.java	                        (rev 0)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityId.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -0,0 +1,19 @@
+package org.infinispan.query;
+
+import org.infinispan.tree.Fqn;
+
+/**
+ * // TODO: Document this
+ *
+ * Sub-interface of {@link org.infinispan.query.EntityId} for people using the {@link org.infinispan.tree.TreeCache}.
+ *
+ * @author Navin Surtani
+ * @since 4.0
+ */
+
+public interface TreeEntityId extends EntityId {
+
+   public Fqn getFqn();
+
+   public String getDocumentId();
+}

Added: branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityIdImpl.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityIdImpl.java	                        (rev 0)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/TreeEntityIdImpl.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -0,0 +1,45 @@
+package org.infinispan.query;
+
+import org.infinispan.tree.Fqn;
+
+/**
+ * This class is used to get fqns, keys and documentId's by calling methods on {@link org.infinispan.query.Transformer}
+ * <p/>
+ *
+ * // TODO: Document this
+ *
+ * @author Navin Surtani
+ * @since 4.0
+ */
+
+
+public class TreeEntityIdImpl implements TreeEntityId {
+
+   private String key;
+   private Fqn fqn;
+   private String documentId;
+
+   public TreeEntityIdImpl (String key, Fqn fqn) throws InvalidKeyException {
+      this.key = key;
+      this.fqn = fqn;
+      documentId = Transformer.generateTreeId(fqn, key);
+   }
+
+   public TreeEntityIdImpl (String documentId) throws InvalidKeyException{
+      this.documentId = documentId;
+      this.key = Transformer.getTreeKey(documentId);
+      this.fqn = Transformer.getTreeFqn(documentId);
+   }
+
+   public Fqn getFqn() {
+      return fqn;
+   }
+
+   public String getDocumentId() {
+      return documentId;
+   }
+
+   public String getKey() {
+      return key;
+   }
+}

Modified: branches/ISPN-32/query/src/main/java/org/infinispan/query/Version.java
===================================================================
--- branches/ISPN-32/query/src/main/java/org/infinispan/query/Version.java	2009-07-01 12:22:07 UTC (rev 509)
+++ branches/ISPN-32/query/src/main/java/org/infinispan/query/Version.java	2009-07-01 12:49:55 UTC (rev 510)
@@ -1,4 +1,4 @@
-package org.jboss.cache.search;
+package org.infinispan.query;
 
 /**
  * Spits out the version number.




More information about the infinispan-commits mailing list