* @return
*/
public static DirectoryBasedReaderManager createDirectoryBasedReaderManager(DirectoryBasedIndexManager indexManager, Properties cfg) {
Properties props = new MaskedProperty( cfg, Environment.READER_PREFIX );
String impl = props.getProperty( "strategy" );
DirectoryBasedReaderManager readerProvider;
if ( StringHelper.isEmpty( impl ) ) {
readerProvider = new SharingBufferReaderProvider();
}
else if ( "not-shared".equalsIgnoreCase( impl ) ) {
readerProvider = new NotSharedReaderProvider();
}
else if ( "shared".equalsIgnoreCase( impl ) ) {
readerProvider = new SharingBufferReaderProvider();
}
else {
readerProvider = ClassLoaderHelper.instanceFromName(
DirectoryBasedReaderManager.class, impl,
CommonPropertiesParse.class, "readerProvider"
);
}
readerProvider.initialize( indexManager, props );
return readerProvider;
}