[jbosscache-commits] JBoss Cache SVN: r6243 - in searchable/trunk/src: test/java/org/jboss/cache/search and 2 other directories.
jbosscache-commits at lists.jboss.org
jbosscache-commits at lists.jboss.org
Thu Jul 10 10:11:25 EDT 2008
Author: navssurtani
Date: 2008-07-10 10:11:25 -0400 (Thu, 10 Jul 2008)
New Revision: 6243
Added:
searchable/trunk/src/test/java/org/jboss/cache/search/CacheEntityIdTest.java
searchable/trunk/src/test/java/org/jboss/cache/search/NodeModifiedTransactionContextTest.java
searchable/trunk/src/test/java/org/jboss/cache/search/blackbox/BrokenAnnotationTest.java
searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenDocumentId.java
searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenProvided.java
Removed:
searchable/trunk/src/main/java/org/jboss/cache/search/SearchableListener.java
Modified:
searchable/trunk/src/main/java/org/jboss/cache/search/CacheQuery.java
searchable/trunk/src/main/java/org/jboss/cache/search/CacheQueryImpl.java
searchable/trunk/src/main/java/org/jboss/cache/search/NodeModifiedTransactionContext.java
searchable/trunk/src/main/java/org/jboss/cache/search/QueryResultIteratorImpl.java
searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheCfgImpl.java
searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheFactory.java
searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCoreListener.java
searchable/trunk/src/main/java/org/jboss/cache/search/SearchablePojoListener.java
Log:
Updated files from HS branch and refactored diffs in JBCS
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/CacheQuery.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/CacheQuery.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/CacheQuery.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -1,6 +1,8 @@
package org.jboss.cache.search;
import org.apache.lucene.search.Sort;
+import org.apache.lucene.search.Filter;
+import org.hibernate.search.FullTextFilter;
import java.util.List;
@@ -69,4 +71,31 @@
*/
void setSort(Sort s);
+
+ /**
+ * Enable a given filter by its name.
+ *
+ * @param name of filter.
+ * @return a FullTextFilter object.
+ */
+ public FullTextFilter enableFullTextFilter(String name);
+
+
+ /**
+ * Disable a given filter by its name.
+ *
+ * @param name of filter.
+ */
+ public void disableFullTextFilter(String name);
+
+ /**
+ * Takes in a lucene filter and sets it to the filter field in the class.
+ *
+ * @param f - lucene filter
+ */
+
+ public void setFilter(Filter f);
+
+
+
}
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/CacheQueryImpl.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/CacheQueryImpl.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/CacheQueryImpl.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -57,9 +57,9 @@
private int fetchSize;
private String[] indexProjection;
private ResultTransformer resultTransformer;
- private Criteria criteria;
CacheEntityLoader entityLoader;
+
public CacheQueryImpl(Query luceneQuery, SearchFactoryImpl searchFactory, Cache cache)
{
this.luceneQuery = luceneQuery;
@@ -74,7 +74,19 @@
this.classes = classes;
}
+ /**
+ * Takes in a lucene filter and sets it to the filter field in the class.
+ *
+ * @param f - lucene filter
+ */
+ public void setFilter(Filter f)
+ {
+ filter = f;
+ }
+
+
+
/**
* @return The result size of the query.
*/
@@ -247,7 +259,7 @@
try
{
hits = getHits(searcher);
- if(log.isTraceEnabled()) log.trace("Number of hits are " + hits.length());
+ if (log.isTraceEnabled()) log.trace("Number of hits are " + hits.length());
int first = first();
int max = max(first, hits);
@@ -337,7 +349,7 @@
{
searcherSimilarity = checkSimilarity(searcherSimilarity, builder);
final DirectoryProvider[] directoryProviders = builder.getDirectoryProviderSelectionStrategy().getDirectoryProvidersForAllShards();
- populateDirectories(directories, directoryProviders, searchFactoryImplementor);
+ populateDirectories(directories, directoryProviders);
}
classesAndSubclasses = null;
}
@@ -361,7 +373,7 @@
final DirectoryProvider[] directoryProviders = builder.getDirectoryProviderSelectionStrategy().getDirectoryProvidersForAllShards();
searcherSimilarity = checkSimilarity(searcherSimilarity, builder);
- populateDirectories(directories, directoryProviders, searchFactoryImplementor);
+ populateDirectories(directories, directoryProviders);
}
classesAndSubclasses = involvedClasses;
}
@@ -411,8 +423,8 @@
return similarity;
}
- private void populateDirectories(List<DirectoryProvider> directories, DirectoryProvider[] directoryProviders,
- SearchFactoryImplementor searchFactoryImplementor)
+ private void populateDirectories(List<DirectoryProvider> directories, DirectoryProvider[] directoryProviders)
+
{
for (DirectoryProvider provider : directoryProviders)
{
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/NodeModifiedTransactionContext.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/NodeModifiedTransactionContext.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/NodeModifiedTransactionContext.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -10,10 +10,10 @@
* This class implements the {@link org.hibernate.search.transaction.TransactionContext} interface. It
* retrieves transaction context information from the {@link org.jboss.cache.notifications.event.NodeModifiedEvent} that gets passed in.
* <p />
- * It is used by the {@link org.jboss.cache.search.SearchableListener} to pass transaction information to a Hibernate Search {@link org.hibernate.search.backend.Work} object.
+ * It is used by the {@link SearchableCoreListener} to pass transaction information to a Hibernate Search {@link org.hibernate.search.backend.Work} object.
* <p />
* @author Navin Surtani - navin at surtani.org
- * @see org.jboss.cache.search.SearchableListener
+ * @see SearchableCoreListener
*/
public class NodeModifiedTransactionContext implements TransactionContext
{
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/QueryResultIteratorImpl.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/QueryResultIteratorImpl.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/QueryResultIteratorImpl.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -13,11 +13,8 @@
*/
public class QueryResultIteratorImpl implements QueryResultIterator
{
- private Cache cache;
private int index = 0;
//private final int size;
- private Object next;
- private int nextObjectIndex = -1;
private List<CacheEntityId> idList;
private CacheEntityLoader entityLoader;
private int lowerLimit = 0;
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheCfgImpl.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheCfgImpl.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheCfgImpl.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -1,8 +1,9 @@
package org.jboss.cache.search;
-import org.hibernate.search.cfg.Cfg;
+import org.hibernate.search.cfg.SearchConfiguration;
import org.hibernate.mapping.PersistentClass;
import org.hibernate.mapping.RootClass;
+import org.hibernate.annotations.common.reflection.ReflectionManager;
import java.util.Iterator;
import java.util.Properties;
@@ -15,7 +16,7 @@
*
* @author Navin Surtani - navin at surtani.org
*/
-public class SearchableCacheCfgImpl implements Cfg
+public class SearchableCacheCfgImpl implements SearchConfiguration
{
protected Map<String, PersistentClass> classes;
private Properties properties;
@@ -61,4 +62,10 @@
return properties;
}
+ public ReflectionManager getReflectionManager()
+ {
+ //TODO: Am I meant to throw unsupported exception?
+ return null;
+ }
+
}
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheFactory.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheFactory.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCacheFactory.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -1,8 +1,7 @@
package org.jboss.cache.search;
import org.hibernate.search.impl.SearchFactoryImpl;
-import org.hibernate.search.cfg.Cfg;
-import org.hibernate.search.annotations.ProvidedId;
+import org.hibernate.search.cfg.SearchConfiguration;
import org.jboss.cache.Cache;
import org.jboss.cache.CacheStatus;
import org.apache.commons.logging.Log;
@@ -23,7 +22,7 @@
* Creates a searchable cache from a cache object and a class array, without the properties object.
*
* @param c - the Cache
- * @param classes - Class array to be added
+ * @param classes - Class array to be added
* @return a SearchableCache
*/
public SearchableCache createSearchableCache(Cache<?, ?> c, Class... classes)
@@ -60,7 +59,7 @@
}
// step 1: create hibernate search searchFactory
- Cfg cfg = new SearchableCacheCfgImpl(classes, properties);
+ SearchConfiguration cfg = new SearchableCacheCfgImpl(classes, properties);
// set classes in the cfg
SearchFactoryImpl searchFactory = new SearchFactoryImpl(cfg);
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCoreListener.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCoreListener.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/SearchableCoreListener.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -18,7 +18,7 @@
* Listener class for changes made to the cache. This listener makes changes if it is a org.jboss.cache being used.
*/
@CacheListener
-public class SearchableCoreListener extends SearchableListener
+public class SearchableCoreListener
{
private SearchFactoryImpl searchFactory;
private static final Log log = LogFactory.getLog(SearchableCoreListener.class);
Deleted: searchable/trunk/src/main/java/org/jboss/cache/search/SearchableListener.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/SearchableListener.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/SearchableListener.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -1,29 +0,0 @@
-package org.jboss.cache.search;
-
-import org.hibernate.search.backend.Work;
-import org.hibernate.search.backend.WorkType;
-import org.hibernate.search.impl.SearchFactoryImpl;
-import org.hibernate.search.transaction.TransactionContext;
-import org.jboss.cache.notifications.annotation.CacheListener;
-import org.jboss.cache.notifications.annotation.NodeModified;
-import org.jboss.cache.notifications.event.NodeModifiedEvent;
-import org.jboss.cache.Fqn;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import java.util.Map;
-
-/**
- * @author Navin Surtani - navin at surtani.org
- * <p/>
- * Abstract class that listens for changes made to the cache so that the Lucene indexes can be updated.
- */
-
- at CacheListener
-public abstract class SearchableListener
-{
- private static final Log log = LogFactory.getLog(SearchableListener.class);
-
-
-
-}
Modified: searchable/trunk/src/main/java/org/jboss/cache/search/SearchablePojoListener.java
===================================================================
--- searchable/trunk/src/main/java/org/jboss/cache/search/SearchablePojoListener.java 2008-07-10 12:21:10 UTC (rev 6242)
+++ searchable/trunk/src/main/java/org/jboss/cache/search/SearchablePojoListener.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -14,7 +14,7 @@
// */
//
//@PojoCacheListener
-//public class SearchablePojoListener extends SearchableListener
+//public class SearchablePojoListener extends
//{
// private SearchFactoryImpl searchFactory;
// private static final Log log = LogFactory.getLog(SearchablePojoListener.class);
@@ -50,7 +50,7 @@
// public void updateLuceneIndexes(NodeModifiedEvent event) throws InvalidKeyException
// {
//
-// if (log.isTraceEnabled()) log.trace("You have entered the SearchableListener");
+// if (log.isTraceEnabled()) log.trace("You have entered the PojoListener for Searchable Cache");
// if (!event.isPre())
// {
// if (log.isTraceEnabled()) log.trace("event.isPre is false. Going to start updating indexes");
Added: searchable/trunk/src/test/java/org/jboss/cache/search/CacheEntityIdTest.java
===================================================================
--- searchable/trunk/src/test/java/org/jboss/cache/search/CacheEntityIdTest.java (rev 0)
+++ searchable/trunk/src/test/java/org/jboss/cache/search/CacheEntityIdTest.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -0,0 +1,36 @@
+package org.jboss.cache.search;
+
+import org.testng.annotations.Test;
+import org.jboss.cache.Fqn;
+import org.jboss.cache.search.CacheEntityId;
+
+/**
+ * @author Navin Surtani - navin at surtani.org
+ */
+
+ at Test
+public class CacheEntityIdTest
+{
+
+ @Test (expectedExceptions = NullPointerException.class)
+ public void testNullFqn()
+ {
+ CacheEntityId nullFqn = new CacheEntityId(null, "key");
+ }
+
+
+ @Test (expectedExceptions = NullPointerException.class)
+ public void testNullKey()
+ {
+ CacheEntityId nullKey = new CacheEntityId(Fqn.fromString("/a/b/c"), null);
+ }
+
+ @Test (expectedExceptions = NullPointerException.class)
+ public void testNullDocId()
+ {
+ CacheEntityId nulldoc = new CacheEntityId(null);
+ }
+
+
+
+}
Added: searchable/trunk/src/test/java/org/jboss/cache/search/NodeModifiedTransactionContextTest.java
===================================================================
--- searchable/trunk/src/test/java/org/jboss/cache/search/NodeModifiedTransactionContextTest.java (rev 0)
+++ searchable/trunk/src/test/java/org/jboss/cache/search/NodeModifiedTransactionContextTest.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -0,0 +1,21 @@
+package org.jboss.cache.search;
+
+import org.testng.annotations.Test;
+
+/**
+ * @author Navin Surtani - navin at surtani.org
+ */
+
+ at Test
+public class NodeModifiedTransactionContextTest
+{
+
+ @Test (expectedExceptions = NullPointerException.class)
+ public void nullConstuctor()
+ {
+ NodeModifiedTransactionContext nmtc = new NodeModifiedTransactionContext(null);
+ }
+
+
+
+}
Added: searchable/trunk/src/test/java/org/jboss/cache/search/blackbox/BrokenAnnotationTest.java
===================================================================
--- searchable/trunk/src/test/java/org/jboss/cache/search/blackbox/BrokenAnnotationTest.java (rev 0)
+++ searchable/trunk/src/test/java/org/jboss/cache/search/blackbox/BrokenAnnotationTest.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -0,0 +1,44 @@
+package org.jboss.cache.search.blackbox;
+
+import org.testng.annotations.Test;
+import org.jboss.cache.search.test.BrokenProvided;
+import org.jboss.cache.search.test.BrokenDocumentId;
+import org.jboss.cache.search.SearchableCache;
+import org.jboss.cache.search.SearchableCacheFactory;
+import org.jboss.cache.Cache;
+import org.jboss.cache.DefaultCacheFactory;
+
+/**
+ * @author Navin Surtani - navin at surtani.org
+ */
+ at Test
+public class BrokenAnnotationTest
+{
+ @Test (expectedExceptions = IllegalArgumentException.class)
+ public void testProvided()
+ {
+ BrokenProvided provided = new BrokenProvided();
+ provided.setBoth("Cat", 5);
+
+ Cache cache = new DefaultCacheFactory().createCache();
+
+ SearchableCache searchable = new SearchableCacheFactory().createSearchableCache(cache, BrokenProvided.class);
+
+
+ }
+
+ @Test (expectedExceptions = IllegalArgumentException.class)
+ public void testDocumentId()
+ {
+ BrokenDocumentId provided = new BrokenDocumentId();
+ provided.setBoth("Cat", 5);
+
+ Cache cache = new DefaultCacheFactory().createCache();
+
+ SearchableCache searchable = new SearchableCacheFactory().createSearchableCache(cache, BrokenProvided.class);
+
+
+
+ }
+
+}
Added: searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenDocumentId.java
===================================================================
--- searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenDocumentId.java (rev 0)
+++ searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenDocumentId.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -0,0 +1,27 @@
+package org.jboss.cache.search.test;
+
+import org.hibernate.search.annotations.ProvidedId;
+import org.hibernate.search.annotations.Indexed;
+import org.hibernate.search.annotations.DocumentId;
+import org.hibernate.search.annotations.Field;
+
+/**
+ * @author Navin Surtani - navin at surtani.org
+ */
+ at ProvidedId
+ at Indexed
+public class BrokenDocumentId
+{
+ @DocumentId
+ @Field
+ String name;
+
+ @Field
+ int age;
+
+ public void setBoth(String name, int age)
+ {
+ this.name = name;
+ this.age = age;
+ }
+}
Added: searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenProvided.java
===================================================================
--- searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenProvided.java (rev 0)
+++ searchable/trunk/src/test/java/org/jboss/cache/search/test/BrokenProvided.java 2008-07-10 14:11:25 UTC (rev 6243)
@@ -0,0 +1,26 @@
+package org.jboss.cache.search.test;
+
+import org.hibernate.search.annotations.Indexed;
+import org.hibernate.search.annotations.DocumentId;
+import org.hibernate.search.annotations.Field;
+
+/**
+ * @author Navin Surtani - navin at surtani.org
+ */
+ at Indexed
+public class BrokenProvided
+{
+ @Field
+ public String name;
+
+ @Field
+ public int age;
+
+ public void setBoth(String name, int age)
+ {
+ this.name = name;
+ this.age = age;
+
+ }
+
+}
More information about the jbosscache-commits
mailing list