[hibernate-commits] Hibernate SVN: r15368 - in search/trunk/src/java/org/hibernate/search: backend and 13 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Wed Oct 22 06:12:18 EDT 2008


Author: hardy.ferentschik
Date: 2008-10-22 06:12:17 -0400 (Wed, 22 Oct 2008)
New Revision: 15368

Modified:
   search/trunk/src/java/org/hibernate/search/Version.java
   search/trunk/src/java/org/hibernate/search/backend/LuceneIndexingParameters.java
   search/trunk/src/java/org/hibernate/search/backend/Workspace.java
   search/trunk/src/java/org/hibernate/search/backend/configuration/MaskedProperty.java
   search/trunk/src/java/org/hibernate/search/backend/impl/jms/JMSBackendQueueProcessor.java
   search/trunk/src/java/org/hibernate/search/backend/impl/lucene/PerDPQueueProcessor.java
   search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/AddWorkDelegate.java
   search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/DeleteWorkDelegate.java
   search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/OptimizeWorkDelegate.java
   search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/PurgeAllWorkDelegate.java
   search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java
   search/trunk/src/java/org/hibernate/search/event/EventListenerRegister.java
   search/trunk/src/java/org/hibernate/search/filter/CachingWrapperFilter.java
   search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java
   search/trunk/src/java/org/hibernate/search/query/FullTextQueryImpl.java
   search/trunk/src/java/org/hibernate/search/reader/SharedReaderProvider.java
   search/trunk/src/java/org/hibernate/search/reader/SharingBufferReaderProvider.java
   search/trunk/src/java/org/hibernate/search/store/FSDirectoryProvider.java
   search/trunk/src/java/org/hibernate/search/store/FSMasterDirectoryProvider.java
   search/trunk/src/java/org/hibernate/search/store/FSSlaveDirectoryProvider.java
   search/trunk/src/java/org/hibernate/search/store/optimization/IncrementalOptimizerStrategy.java
   search/trunk/src/java/org/hibernate/search/util/FileHelper.java
Log:
Made loggers static. This is consistent with the way Hibernate Core uses loggers.

Modified: search/trunk/src/java/org/hibernate/search/Version.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/Version.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/Version.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -14,8 +14,9 @@
 public class Version {
 	public static final String VERSION = "3.1.0.SNAPSHOT" + new Date();
 
+	private static final Logger log = LoggerFactory.make();
+
 	static {
-		Logger log = LoggerFactory.make();
 		log.info( "Hibernate Search {}", VERSION );
 	}
 

Modified: search/trunk/src/java/org/hibernate/search/backend/LuceneIndexingParameters.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/LuceneIndexingParameters.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/LuceneIndexingParameters.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -27,6 +27,7 @@
 public class LuceneIndexingParameters implements Serializable {
 
 	private static final long serialVersionUID = 5424606407623591663L;
+	private static final Logger log = LoggerFactory.make();
 	
 	// value keyword
 	public static final String EXPLICIT_DEFAULT_VALUE = "default";
@@ -45,14 +46,12 @@
 		Properties transactionProps = new MaskedProperty( indexingParameters, TRANSACTION );
 		//get keys for "batch" (defaulting to transaction)
 		Properties batchProps = new MaskedProperty( indexingParameters, BATCH, transactionProps ); //TODO to close HSEARCH-201 just remove 3° parameter
-		//logger only used during object construction: (logger not serializable).
-		Logger log = LoggerFactory.make();
-		transactionIndexParameters = new ParameterSet( transactionProps, TRANSACTION, log );
-		batchIndexParameters = new ParameterSet( batchProps, BATCH, log );
-		doSanityChecks( transactionIndexParameters, batchIndexParameters, log );
+		transactionIndexParameters = new ParameterSet( transactionProps, TRANSACTION);
+		batchIndexParameters = new ParameterSet( batchProps, BATCH);
+		doSanityChecks( transactionIndexParameters, batchIndexParameters);
 	}
 
-	private void doSanityChecks(ParameterSet transParams, ParameterSet batchParams, Logger log) {
+	private void doSanityChecks(ParameterSet transParams, ParameterSet batchParams) {
 		if ( log.isWarnEnabled() ) {
 			Integer maxFieldLengthTransaction = transParams.parameters.get( MAX_FIELD_LENGTH );
 			Integer maxFieldLengthBatch = transParams.parameters.get( MAX_FIELD_LENGTH );
@@ -83,7 +82,7 @@
 		
 		final Map<IndexWriterSetting, Integer> parameters = new EnumMap<IndexWriterSetting, Integer>(IndexWriterSetting.class);
 		
-		public ParameterSet(Properties prop, String paramName, Logger log) {
+		public ParameterSet(Properties prop, String paramName) {
 			//don't iterate on property entries as we know all the keys:
 			for ( IndexWriterSetting t : IndexWriterSetting.values() ) {
 				String key = t.getKey();

Modified: search/trunk/src/java/org/hibernate/search/backend/Workspace.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/Workspace.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/Workspace.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -40,7 +40,7 @@
 //TODO renaming to "DirectoryWorkspace" would be nice.
 public class Workspace {
 
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	private static final Analyzer SIMPLE_ANALYZER = new SimpleAnalyzer();
 	
 	// invariant state:
@@ -256,7 +256,7 @@
 		}
 	}
 
-	private final void assertOwnLock() {
+	private void assertOwnLock() {
 		if ( ! lock.isHeldByCurrentThread() )
 			throw new AssertionFailure( "Not owning DirectoryProvider Lock" );
 	}

Modified: search/trunk/src/java/org/hibernate/search/backend/configuration/MaskedProperty.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/configuration/MaskedProperty.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/configuration/MaskedProperty.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -38,8 +38,8 @@
 public class MaskedProperty extends Properties implements Serializable {
 	
 	private static final long serialVersionUID = -593307257383085113L;
-	
-	private transient Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
+
 	private final Properties masked;
 	private final Properties fallBack;
 	private final String radix;
@@ -373,15 +373,4 @@
 			return false;
 		return true;
 	}
-	
-	private void readObject(ObjectInputStream aInputStream) throws ClassNotFoundException, IOException {
-		//always perform the default de-serialization first
-		aInputStream.defaultReadObject();
-		log = LoggerFactory.make();
-	}
-
-	private void writeObject(ObjectOutputStream aOutputStream) throws IOException {
-		aOutputStream.defaultWriteObject();
-	}
-
 }

Modified: search/trunk/src/java/org/hibernate/search/backend/impl/jms/JMSBackendQueueProcessor.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/impl/jms/JMSBackendQueueProcessor.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/impl/jms/JMSBackendQueueProcessor.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -21,9 +21,10 @@
  * @author Emmanuel Bernard
  */
 public class JMSBackendQueueProcessor implements Runnable {
+	private static final Logger log = LoggerFactory.make();
+
 	private List<LuceneWork> queue;
 	private JMSBackendQueueProcessorFactory factory;
-	private Logger log = LoggerFactory.make();
 
 	public JMSBackendQueueProcessor(List<LuceneWork> queue,
 									JMSBackendQueueProcessorFactory jmsBackendQueueProcessorFactory) {

Modified: search/trunk/src/java/org/hibernate/search/backend/impl/lucene/PerDPQueueProcessor.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/impl/lucene/PerDPQueueProcessor.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/impl/lucene/PerDPQueueProcessor.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -18,7 +18,7 @@
  */
 class PerDPQueueProcessor {
 	
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	private final Workspace workspace;
 	private final LuceneWorkVisitor worker;
 	private final List<LuceneWork> workOnWriter = new ArrayList<LuceneWork>();

Modified: search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/AddWorkDelegate.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/AddWorkDelegate.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/AddWorkDelegate.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -27,8 +27,9 @@
  */
 class AddWorkDelegate implements LuceneWorkDelegate {
 
+	private static final Logger log = LoggerFactory.make();
+
 	private final Workspace workspace;
-	private final Logger log = LoggerFactory.make();
 
 	AddWorkDelegate(Workspace workspace) {
 		this.workspace = workspace;

Modified: search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/DeleteWorkDelegate.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/DeleteWorkDelegate.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/DeleteWorkDelegate.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -30,8 +30,8 @@
  */
 class DeleteWorkDelegate implements LuceneWorkDelegate {
 
+	private static final Logger log = LoggerFactory.make();	
 	private final Workspace workspace;
-	private final Logger log = LoggerFactory.make();
 
 	DeleteWorkDelegate(Workspace workspace) {
 		this.workspace = workspace;

Modified: search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/OptimizeWorkDelegate.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/OptimizeWorkDelegate.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/OptimizeWorkDelegate.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -13,18 +13,20 @@
 import org.hibernate.search.util.LoggerFactory;
 
 /**
-* Stateless implementation that performs a OptimizeLuceneWork.
-* @see LuceneWorkVisitor
-* @see LuceneWorkDelegate
-* @author Emmanuel Bernard
-* @author Hardy Ferentschik
-* @author John Griffin
-* @author Sanne Grinovero
-*/
+ * Stateless implementation that performs a OptimizeLuceneWork.
+ *
+ * @author Emmanuel Bernard
+ * @author Hardy Ferentschik
+ * @author John Griffin
+ * @author Sanne Grinovero
+ * @see LuceneWorkVisitor
+ * @see LuceneWorkDelegate
+ */
 class OptimizeWorkDelegate implements LuceneWorkDelegate {
-	
+
+	private static final Logger log = LoggerFactory.make();
+
 	private final Workspace workspace;
-	private final Logger log = LoggerFactory.make();
 
 	OptimizeWorkDelegate(Workspace workspace) {
 		this.workspace = workspace;
@@ -40,7 +42,7 @@
 			writer.optimize();
 			workspace.optimize();
 		}
-		catch (IOException e) {
+		catch ( IOException e ) {
 			throw new SearchException( "Unable to optimize Lucene index: " + work.getEntityClass(), e );
 		}
 	}
@@ -48,5 +50,5 @@
 	public void performWork(LuceneWork work, IndexReader reader) {
 		throw new UnsupportedOperationException();
 	}
-	
+
 }

Modified: search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/PurgeAllWorkDelegate.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/PurgeAllWorkDelegate.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/backend/impl/lucene/works/PurgeAllWorkDelegate.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -22,7 +22,7 @@
 */
 class PurgeAllWorkDelegate implements LuceneWorkDelegate {
 	
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 
 	PurgeAllWorkDelegate() {
 	}

Modified: search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -324,7 +324,7 @@
 			}
 			maxLevel = potentialLevel > maxLevel ? maxLevel : potentialLevel;
 			level++;
-
+			                                                             
 			XClass elementClass;
 			if ( void.class == embeddedAnn.targetElement() ) {
 				elementClass = member.getElementClass();

Modified: search/trunk/src/java/org/hibernate/search/event/EventListenerRegister.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/event/EventListenerRegister.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/event/EventListenerRegister.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -3,6 +3,8 @@
 
 import java.util.Properties;
 
+import org.slf4j.Logger;
+
 import org.hibernate.event.EventListeners;
 import org.hibernate.event.PostCollectionRecreateEventListener;
 import org.hibernate.event.PostCollectionRemoveEventListener;
@@ -16,89 +18,101 @@
 
 /**
  * Helper methods initializing Hibernate Search event listeners.
- * 
+ *
  * @author Emmanuel Bernard
  * @author Hardy Ferentschik
  * @author Sanne Grinovero
  */
 public class EventListenerRegister {
 
+	private static final Logger log = LoggerFactory.make();
+
 	/**
 	 * Add the FullTextIndexEventListener to all listeners, if enabled in configuration
 	 * and if not already registered.
+	 *
 	 * @param listeners
 	 * @param properties the Search configuration
 	 */
-	public static void enableHibernateSearch(EventListeners listeners, Properties properties) {		
+	public static void enableHibernateSearch(EventListeners listeners, Properties properties) {
 		// check whether search is explicitly disabled - if so there is nothing to do	
 		String enableSearchListeners = properties.getProperty( Environment.AUTOREGISTER_LISTENERS );
 		if ( "false".equalsIgnoreCase( enableSearchListeners ) ) {
-			LoggerFactory.make().info(
+			log.info(
 					"Property hibernate.search.autoregister_listeners is set to false." +
-					" No attempt will be made to register Hibernate Search event listeners." );
+							" No attempt will be made to register Hibernate Search event listeners."
+			);
 			return;
 		}
 		final FullTextIndexEventListener searchListener = new FullTextIndexEventListener();
 		// PostInsertEventListener
 		listeners.setPostInsertEventListeners(
-			addIfNeeded(
-				listeners.getPostInsertEventListeners(),
-				searchListener,
-				new PostInsertEventListener[] { searchListener } )
-			);
+				addIfNeeded(
+						listeners.getPostInsertEventListeners(),
+						searchListener,
+						new PostInsertEventListener[] { searchListener }
+				)
+		);
 		// PostUpdateEventListener
 		listeners.setPostUpdateEventListeners(
-			addIfNeeded(
-				listeners.getPostUpdateEventListeners(),
-				searchListener,
-				new PostUpdateEventListener[] { searchListener } )
-			);
+				addIfNeeded(
+						listeners.getPostUpdateEventListeners(),
+						searchListener,
+						new PostUpdateEventListener[] { searchListener }
+				)
+		);
 		// PostDeleteEventListener
 		listeners.setPostDeleteEventListeners(
-			addIfNeeded(
-				listeners.getPostDeleteEventListeners(),
-				searchListener,
-				new PostDeleteEventListener[] { searchListener } )
-			);
-		
+				addIfNeeded(
+						listeners.getPostDeleteEventListeners(),
+						searchListener,
+						new PostDeleteEventListener[] { searchListener }
+				)
+		);
+
 		// PostCollectionRecreateEventListener
 		listeners.setPostCollectionRecreateEventListeners(
-			addIfNeeded(
-				listeners.getPostCollectionRecreateEventListeners(),
-				searchListener,
-				new PostCollectionRecreateEventListener[] { searchListener } )
-			);
+				addIfNeeded(
+						listeners.getPostCollectionRecreateEventListeners(),
+						searchListener,
+						new PostCollectionRecreateEventListener[] { searchListener }
+				)
+		);
 		// PostCollectionRemoveEventListener
 		listeners.setPostCollectionRemoveEventListeners(
-			addIfNeeded(
-				listeners.getPostCollectionRemoveEventListeners(),
-				searchListener,
-				new PostCollectionRemoveEventListener[] { searchListener } )
-			);
+				addIfNeeded(
+						listeners.getPostCollectionRemoveEventListeners(),
+						searchListener,
+						new PostCollectionRemoveEventListener[] { searchListener }
+				)
+		);
 		// PostCollectionUpdateEventListener
 		listeners.setPostCollectionUpdateEventListeners(
-			addIfNeeded(
-				listeners.getPostCollectionUpdateEventListeners(),
-				searchListener,
-				new PostCollectionUpdateEventListener[] { searchListener } )
-			);
-		
+				addIfNeeded(
+						listeners.getPostCollectionUpdateEventListeners(),
+						searchListener,
+						new PostCollectionUpdateEventListener[] { searchListener }
+				)
+		);
+
 	}
 
 	/**
 	 * Verifies if a Search listener is already present; if not it will return
 	 * a grown address adding the listener to it.
+	 *
 	 * @param <T> the type of listeners
 	 * @param listeners
 	 * @param searchEventListener
 	 * @param toUseOnNull this is returned if listeners==null
+	 *
 	 * @return
 	 */
 	private static <T> T[] addIfNeeded(T[] listeners, T searchEventListener, T[] toUseOnNull) {
 		if ( listeners == null ) {
 			return toUseOnNull;
 		}
-		else if ( ! isPresentInListeners( listeners ) ) {
+		else if ( !isPresentInListeners( listeners ) ) {
 			return appendToArray( listeners, searchEventListener );
 		}
 		else {
@@ -108,29 +122,34 @@
 
 	/**
 	 * Will add one element to the end of an array.
+	 *
 	 * @param <T> The array type
 	 * @param listeners The original array
 	 * @param newElement The element to be added
+	 *
 	 * @return A new array containing all listeners and newElement.
 	 */
 	@SuppressWarnings("unchecked")
 	private static <T> T[] appendToArray(T[] listeners, T newElement) {
 		int length = listeners.length;
-		T[] ret = (T[])java.lang.reflect.Array.newInstance(
-				listeners.getClass().getComponentType(), length + 1 );
+		T[] ret = ( T[] ) java.lang.reflect.Array.newInstance(
+				listeners.getClass().getComponentType(), length + 1
+		);
 		System.arraycopy( listeners, 0, ret, 0, length );
 		ret[length] = newElement;
 		return ret;
 	}
-	
+
 	/**
 	 * Verifies if a FullTextIndexEventListener is contained in the array.
+	 *
 	 * @param listeners
+	 *
 	 * @return true if it is contained in.
 	 */
 	@SuppressWarnings("deprecation")
 	private static boolean isPresentInListeners(Object[] listeners) {
-		for (Object eventListener : listeners) {
+		for ( Object eventListener : listeners ) {
 			if ( FullTextIndexEventListener.class == eventListener.getClass() ) {
 				return true;
 			}
@@ -140,5 +159,4 @@
 		}
 		return false;
 	}
-		
 }

Modified: search/trunk/src/java/org/hibernate/search/filter/CachingWrapperFilter.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/filter/CachingWrapperFilter.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/filter/CachingWrapperFilter.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -23,7 +23,7 @@
 @SuppressWarnings("serial")
 public class CachingWrapperFilter extends Filter {
 	
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	
 	public static final int DEFAULT_SIZE = 5;
 	

Modified: search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -63,7 +63,7 @@
 		Version.touch();
 	}
 
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 
 	private final Map<Class, DocumentBuilder<Object>> documentBuilders = new HashMap<Class, DocumentBuilder<Object>>();
 	//keep track of the index modifiers per DirectoryProvider since multiple entity can use the same directory provider

Modified: search/trunk/src/java/org/hibernate/search/query/FullTextQueryImpl.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/query/FullTextQueryImpl.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/query/FullTextQueryImpl.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -70,7 +70,7 @@
  */
 //TODO implements setParameter()
 public class FullTextQueryImpl extends AbstractQueryImpl implements FullTextQuery {
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	private final org.apache.lucene.search.Query luceneQuery;
 	private Class[] classes;
 	private Set<Class> classesAndSubclasses;

Modified: search/trunk/src/java/org/hibernate/search/reader/SharedReaderProvider.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/reader/SharedReaderProvider.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/reader/SharedReaderProvider.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -12,14 +12,15 @@
 
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.MultiReader;
+import org.slf4j.Logger;
+
 import org.hibernate.annotations.common.AssertionFailure;
 import org.hibernate.search.SearchException;
-import org.hibernate.search.util.LoggerFactory;
 import org.hibernate.search.engine.SearchFactoryImplementor;
 import static org.hibernate.search.reader.ReaderProviderHelper.buildMultiReader;
 import static org.hibernate.search.reader.ReaderProviderHelper.clean;
 import org.hibernate.search.store.DirectoryProvider;
-import org.slf4j.Logger;
+import org.hibernate.search.util.LoggerFactory;
 
 /**
  * Share readers per SearchFactory, reusing them iff they are still valid.
@@ -27,7 +28,8 @@
  * @author Emmanuel Bernard
  */
 public class SharedReaderProvider implements ReaderProvider {
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
+
 	/**
 	 * nonfair lock. Need to be acquired on indexReader acquisition or release (semaphore)
 	 */
@@ -56,13 +58,17 @@
 		boolean trace = log.isTraceEnabled();
 		int length = directoryProviders.length;
 		IndexReader[] readers = new IndexReader[length];
-		if ( trace ) log.trace( "Opening IndexReader for directoryProviders: {}", length );
+		if ( trace ) {
+			log.trace( "Opening IndexReader for directoryProviders: {}", length );
+		}
 
-		for (int index = 0; index < length; index++) {
+		for ( int index = 0; index < length; index++ ) {
 			DirectoryProvider directoryProvider = directoryProviders[index];
 			IndexReader reader;
 			Lock directoryProviderLock = perDirectoryProviderManipulationLocks.get( directoryProvider );
-			if ( trace ) log.trace( "Opening IndexReader from {}", directoryProvider.getDirectory() );
+			if ( trace ) {
+				log.trace( "Opening IndexReader from {}", directoryProvider.getDirectory() );
+			}
 			directoryProviderLock.lock(); //needed for same problem as the double-checked locking
 			try {
 				reader = activeSearchIndexReaders.get( directoryProvider );
@@ -71,8 +77,9 @@
 				directoryProviderLock.unlock();
 			}
 			if ( reader == null ) {
-				if ( trace )
+				if ( trace ) {
 					log.trace( "No shared IndexReader, opening a new one: {}", directoryProvider.getDirectory() );
+				}
 				reader = replaceActiveReader( null, directoryProviderLock, directoryProvider, readers );
 			}
 			else {
@@ -80,20 +87,23 @@
 				try {
 					isCurrent = reader.isCurrent();
 				}
-				catch (IOException e) {
+				catch ( IOException e ) {
 					throw new SearchException( "Unable to read current status of Lucene IndexReader", e );
 				}
 				if ( !isCurrent ) {
 					if ( trace ) {
-						log.trace( "Out of date shared IndexReader found, opening a new one: {}",
-								directoryProvider.getDirectory() );
+						log.trace(
+								"Out of date shared IndexReader found, opening a new one: {}",
+								directoryProvider.getDirectory()
+						);
 					}
 					IndexReader outOfDateReader = reader;
 					reader = replaceActiveReader( outOfDateReader, directoryProviderLock, directoryProvider, readers );
 				}
 				else {
-					if ( trace )
+					if ( trace ) {
 						log.trace( "Valid shared IndexReader: {}" + directoryProvider.getDirectory() );
+					}
 					directoryProviderLock.lock();
 					try {
 						//read the latest active one, the current one could be out of date and closed already
@@ -105,7 +115,9 @@
 							//TODO if readerData is null????
 							readerData.semaphore++;
 							searchIndexReaderSemaphores.put( reader, readerData ); //not necessary
-							if ( trace ) log.trace( "Semaphore increased: {} for {}", readerData.semaphore, reader );
+							if ( trace ) {
+								log.trace( "Semaphore increased: {} for {}", readerData.semaphore, reader );
+							}
 						}
 						finally {
 							semaphoreIndexReaderLock.unlock();
@@ -121,7 +133,7 @@
 		return buildMultiReader( length, readers );
 	}
 
-	@SuppressWarnings( { "ThrowableInstanceNeverThrown" } )
+	@SuppressWarnings({ "ThrowableInstanceNeverThrown" })
 	private IndexReader replaceActiveReader(IndexReader outOfDateReader, Lock directoryProviderLock, DirectoryProvider directoryProvider, IndexReader[] readers) {
 		boolean trace = log.isTraceEnabled();
 		IndexReader oldReader;
@@ -135,7 +147,7 @@
 		try {
 			reader = IndexReader.open( directoryProvider.getDirectory() );
 		}
-		catch (IOException e) {
+		catch ( IOException e ) {
 			throw new SearchException( "Unable to open Lucene IndexReader", e );
 		}
 		directoryProviderLock.lock();
@@ -145,7 +157,9 @@
 			semaphoreIndexReaderLock.lock();
 			try {
 				searchIndexReaderSemaphores.put( reader, new ReaderData( 1, directoryProvider ) );
-				if ( trace ) log.trace( "Semaphore: 1 for {}", reader );
+				if ( trace ) {
+					log.trace( "Semaphore: 1 for {}", reader );
+				}
 				if ( outOfDateReader != null ) {
 					ReaderData readerData = searchIndexReaderSemaphores.get( outOfDateReader );
 					if ( readerData == null ) {
@@ -183,20 +197,24 @@
 			directoryProviderLock.unlock();
 		}
 		if ( closeOutOfDateReader ) {
-			if ( trace ) log.trace( "Closing out of date IndexReader {}", outOfDateReader );
+			if ( trace ) {
+				log.trace( "Closing out of date IndexReader {}", outOfDateReader );
+			}
 			try {
 				outOfDateReader.close();
 			}
-			catch (IOException e) {
+			catch ( IOException e ) {
 				clean( new SearchException( "Unable to close Lucene IndexReader", e ), readers );
 			}
 		}
 		if ( closeOldReader ) {
-			if ( trace ) log.trace( "Closing old IndexReader {}", oldReader );
+			if ( trace ) {
+				log.trace( "Closing old IndexReader {}", oldReader );
+			}
 			try {
 				oldReader.close();
 			}
-			catch (IOException e) {
+			catch ( IOException e ) {
 				clean( new SearchException( "Unable to close Lucene IndexReader", e ), readers );
 			}
 		}
@@ -205,18 +223,22 @@
 
 	public void closeReader(IndexReader reader) {
 		boolean trace = log.isTraceEnabled();
-		if ( reader == null ) return;
+		if ( reader == null ) {
+			return;
+		}
 		IndexReader[] readers;
 		//TODO should it be CacheableMultiReader? Probably no
 		if ( reader instanceof MultiReader ) {
-			readers = ReaderProviderHelper.getSubReadersFromMultiReader( (MultiReader) reader );
-			if ( trace ) log.trace( "Closing MultiReader: {}", reader );
+			readers = ReaderProviderHelper.getSubReadersFromMultiReader( ( MultiReader ) reader );
+			if ( trace ) {
+				log.trace( "Closing MultiReader: {}", reader );
+			}
 		}
 		else {
 			throw new AssertionFailure( "Everything should be wrapped in a MultiReader" );
 		}
 
-		for (IndexReader subReader : readers) {
+		for ( IndexReader subReader : readers ) {
 			closeInternalReader( trace, subReader, false );
 		}
 	}
@@ -245,7 +267,9 @@
 		try {
 			boolean isActive;
 			isActive = activeSearchIndexReaders.get( readerData.provider ) == subReader;
-			if ( trace ) log.trace( "Indexreader not active: {}", subReader );
+			if ( trace ) {
+				log.trace( "Indexreader not active: {}", subReader );
+			}
 			semaphoreIndexReaderLock.lock();
 			try {
 				readerData = searchIndexReaderSemaphores.get( subReader );
@@ -256,13 +280,16 @@
 				}
 
 				//final close, the semaphore should be at 0 already
-				if (!finalClose) {
+				if ( !finalClose ) {
 					readerData.semaphore--;
-					if ( trace ) log.trace( "Semaphore decreased to: {} for {}", readerData.semaphore, subReader );
+					if ( trace ) {
+						log.trace( "Semaphore decreased to: {} for {}", readerData.semaphore, subReader );
+					}
 				}
 
-				if ( readerData.semaphore < 0 )
+				if ( readerData.semaphore < 0 ) {
 					log.error( "Semaphore negative: {}", subReader.directory() );
+				}
 				if ( ( !isActive ) && readerData.semaphore == 0 ) {
 					searchIndexReaderSemaphores.remove( subReader );
 					closeReader = true;
@@ -280,11 +307,13 @@
 		}
 
 		if ( closeReader ) {
-			if ( trace ) log.trace( "Closing IndexReader: {}", subReader );
+			if ( trace ) {
+				log.trace( "Closing IndexReader: {}", subReader );
+			}
 			try {
 				subReader.close();
 			}
-			catch ( IOException e) {
+			catch ( IOException e ) {
 				log.warn( "Unable to close Lucene IndexReader", e );
 			}
 		}
@@ -293,7 +322,7 @@
 	public void initialize(Properties props, SearchFactoryImplementor searchFactoryImplementor) {
 		Set<DirectoryProvider> providers = searchFactoryImplementor.getDirectoryProviders();
 		perDirectoryProviderManipulationLocks = new HashMap<DirectoryProvider, Lock>( providers.size() );
-		for (DirectoryProvider dp : providers) {
+		for ( DirectoryProvider dp : providers ) {
 			perDirectoryProviderManipulationLocks.put( dp, new ReentrantLock() );
 		}
 		perDirectoryProviderManipulationLocks = Collections.unmodifiableMap( perDirectoryProviderManipulationLocks );
@@ -306,13 +335,14 @@
 		try {
 			//release active readers
 			activeSearchIndexReaders.clear();
-			readers = searchIndexReaderSemaphores.keySet().toArray( new IndexReader[searchIndexReaderSemaphores.size()] );
+			readers = searchIndexReaderSemaphores.keySet()
+					.toArray( new IndexReader[searchIndexReaderSemaphores.size()] );
 		}
 		finally {
 			semaphoreIndexReaderLock.unlock();
 		}
 
-		for (IndexReader reader : readers) {
+		for ( IndexReader reader : readers ) {
 			closeInternalReader( trace, reader, true );
 		}
 

Modified: search/trunk/src/java/org/hibernate/search/reader/SharingBufferReaderProvider.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/reader/SharingBufferReaderProvider.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/reader/SharingBufferReaderProvider.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -32,7 +32,9 @@
  * @author Sanne Grinovero
  */
 public class SharingBufferReaderProvider implements ReaderProvider {
-	
+
+	private static final Logger log = LoggerFactory.make();	
+
 	/**
 	 * contains all Readers (most current per DP and all unclosed old) 
 	 */
@@ -43,8 +45,6 @@
 	 * contains last updated Reader; protected by lockOnOpenLatest (in the values)
 	 */
 	protected Map<DirectoryProvider,PerDirectoryLatestReader> currentReaders;
-	
-	private final Logger log = LoggerFactory.make();
 
 	public void closeReader(IndexReader multiReader) {
 		if ( multiReader == null ) return;

Modified: search/trunk/src/java/org/hibernate/search/store/FSDirectoryProvider.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/store/FSDirectoryProvider.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/store/FSDirectoryProvider.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -23,7 +23,7 @@
  */
 public class FSDirectoryProvider implements DirectoryProvider<FSDirectory> {
 
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	
 	private FSDirectory directory;
 	private String indexName;

Modified: search/trunk/src/java/org/hibernate/search/store/FSMasterDirectoryProvider.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/store/FSMasterDirectoryProvider.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/store/FSMasterDirectoryProvider.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -33,7 +33,7 @@
 //TODO rename copy?
 public class FSMasterDirectoryProvider implements DirectoryProvider<FSDirectory> {
 	
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	private final Timer timer = new Timer( true ); //daemon thread, the copy algorithm is robust
 	
 	private volatile int current;

Modified: search/trunk/src/java/org/hibernate/search/store/FSSlaveDirectoryProvider.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/store/FSSlaveDirectoryProvider.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/store/FSSlaveDirectoryProvider.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -33,7 +33,7 @@
  */
 public class FSSlaveDirectoryProvider implements DirectoryProvider<FSDirectory> {
 	
-	private final Logger log = LoggerFactory.make();
+	private static final Logger log = LoggerFactory.make();
 	private final Timer timer = new Timer( true ); //daemon thread, the copy algorithm is robust
 	
 	private volatile int current; //used also as memory barrier of all other values, which are set once.

Modified: search/trunk/src/java/org/hibernate/search/store/optimization/IncrementalOptimizerStrategy.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/store/optimization/IncrementalOptimizerStrategy.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/store/optimization/IncrementalOptimizerStrategy.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -20,12 +20,14 @@
  * @author Emmanuel Bernard
  */
 public class IncrementalOptimizerStrategy implements OptimizerStrategy {
+	
+	private static final Logger log = LoggerFactory.make();	
+
 	private int operationMax = -1;
 	private int transactionMax = -1;
 	private long operations = 0;
 	private long transactions = 0;
 	private DirectoryProvider directoryProvider;
-	private final Logger log = LoggerFactory.make();
 
 	public void initialize(DirectoryProvider directoryProvider, Properties indexProperties, SearchFactoryImplementor searchFactoryImplementor) {
 		this.directoryProvider = directoryProvider;

Modified: search/trunk/src/java/org/hibernate/search/util/FileHelper.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/util/FileHelper.java	2008-10-21 19:11:13 UTC (rev 15367)
+++ search/trunk/src/java/org/hibernate/search/util/FileHelper.java	2008-10-22 10:12:17 UTC (rev 15368)
@@ -17,10 +17,11 @@
  * @author Sanne Grinovero
  */
 public abstract class FileHelper {
-	
+
+    private static final Logger log = LoggerFactory.make();
 	private static final int FAT_PRECISION = 2000;
 	public static final long DEFAULT_COPY_BUFFER_SIZE = 16 * 1024 * 1024; // 16 MB
-	private static final Logger log = LoggerFactory.make();
+
 	
 	public static void synchronize(File source, File destination, boolean smart) throws IOException {
 		synchronize( source, destination, smart, DEFAULT_COPY_BUFFER_SIZE );




More information about the hibernate-commits mailing list