final int numberOfIndexedFields = indexedField.length;
if ( numberOfIndexedFields == 0 ) throw new IllegalArgumentException( "You must specify at least one field" );
final DocumentFactory factory = documentSequence.factory();
final File tempDir = tempDirName == null ? null : new File( tempDirName );
for ( int i = 0; i < indexedField.length; i++ )
if ( factory.fieldType( indexedField[ i ] ) == DocumentFactory.FieldType.VIRTUAL && ( virtualDocumentResolver == null || virtualDocumentResolver[ i ] == null ) ) throw new IllegalArgumentException(
"No resolver was associated with virtual field " + factory.fieldName( indexedField[ i ] ) );
final int[] map = mapFile != null ? BinIO.loadInts( mapFile ) : null;
final Scan[] scan = new Scan[ numberOfIndexedFields ]; // To scan textual content