|
From: <hib...@li...> - 2006-07-04 17:58:55
|
Author: epbernard
Date: 2006-07-04 13:58:50 -0400 (Tue, 04 Jul 2006)
New Revision: 10083
Modified:
trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/DirectoryProvider.java
trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/RAMDirectoryProvider.java
Log:
init ram directory index (Sylvain Vieujot)
Modified: trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/DirectoryProvider.java
===================================================================
--- trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/DirectoryProvider.java 2006-07-04 01:28:33 UTC (rev 10082)
+++ trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/DirectoryProvider.java 2006-07-04 17:58:50 UTC (rev 10083)
@@ -9,9 +9,10 @@
/**
* Set up and provide a Lucene <code>Directory</code>
- * <code>equals()</code> and <code>hashCode()</code> must guaranty to
- * return true for a provider pointing to the same underlying Lucene Store
+ * <code>equals()</code> and <code>hashCode()</code> must guaranty equality
+ * between two providers pointing to the same underlying Lucene Store
* This class must be thread safe regarding <code>getDirectory()</code>
+ * calls
*
* @author Emmanuel Bernard
* @author Sylvain Vieujot
Modified: trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/RAMDirectoryProvider.java
===================================================================
--- trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/RAMDirectoryProvider.java 2006-07-04 01:28:33 UTC (rev 10082)
+++ trunk/HibernateExt/metadata/src/java/org/hibernate/lucene/store/RAMDirectoryProvider.java 2006-07-04 17:58:50 UTC (rev 10083)
@@ -1,9 +1,13 @@
//$Id: $
package org.hibernate.lucene.store;
+import java.io.IOException;
import java.util.Properties;
+import org.apache.lucene.analysis.standard.StandardAnalyzer;
+import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.store.RAMDirectory;
+import org.hibernate.HibernateException;
import org.hibernate.cfg.Configuration;
/**
@@ -20,6 +24,13 @@
public void initialize(Class entity, Configuration cfg, Properties properties) {
indexName = DirectoryProviderFactory.getTypeName( entity );
directory = new RAMDirectory();
+ try {
+ IndexWriter iw = new IndexWriter(directory, new StandardAnalyzer(), true );
+ iw.close();
+ }
+ catch (IOException e) {
+ throw new HibernateException( "Unable to initialize index: " + indexName, e );
+ }
}
public RAMDirectory getDirectory() {
|