void writeIndexData( IndexPackingRequest request, List<Integer> docIndexes, File targetArchive ) throws IOException { if ( targetArchive.exists() ) { targetArchive.delete(); } try ( OutputStream os = new FileOutputStream( targetArchive ) ) { IndexDataWriter dw = new IndexDataWriter( os ); dw.write( request.getContext(), request.getIndexReader(), docIndexes ); os.flush(); } }
public int write( IndexingContext context, IndexReader indexReader, List<Integer> docIndexes ) throws IOException { writeHeader( context ); int n = writeDocuments( indexReader, docIndexes ); writeGroupFields(); close(); return n; }
public void writeDocumentFields( List<IndexableField> fields ) throws IOException { dos.writeInt( fields.size() ); for ( IndexableField field : fields ) { writeField( field ); } }
public void writeGroupFields() throws IOException { { List<IndexableField> allGroupsFields = new ArrayList<>( 2 ); allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS, ArtifactInfo.ALL_GROUPS_VALUE, Store.YES)); allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS_LIST, ArtifactInfo.lst2str( allGroups ), Store.YES) ); writeDocumentFields( allGroupsFields ); } { List<IndexableField> rootGroupsFields = new ArrayList<>( 2 ); rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS, ArtifactInfo.ROOT_GROUPS_VALUE, Store.YES) ); rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS_LIST, ArtifactInfo.lst2str( rootGroups ), Store.YES )); writeDocumentFields( rootGroupsFields ); } }
public void writeField( IndexableField field ) throws IOException { int flags = ( field.fieldType().indexOptions() != IndexOptions.NONE ? F_INDEXED : 0 ) // + ( field.fieldType().tokenized() ? F_TOKENIZED : 0 ) // + ( field.fieldType().stored() ? F_STORED : 0 ); // // + ( false ? F_COMPRESSED : 0 ); // Compressed not supported anymore String name = field.name(); String value = field.stringValue(); dos.write( flags ); dos.writeUTF( name ); writeUTF( value, dos ); }
if ( writeDocument( r.document( i ) ) ) if ( writeDocument( r.document( i ) ) )
public void writeGroupFields() throws IOException { { List<IndexableField> allGroupsFields = new ArrayList<>( 2 ); allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS, ArtifactInfo.ALL_GROUPS_VALUE, Store.YES ) ); allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS_LIST, ArtifactInfo.lst2str( allGroups ), Store.YES ) ); writeDocumentFields( allGroupsFields ); } { List<IndexableField> rootGroupsFields = new ArrayList<>( 2 ); rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS, ArtifactInfo.ROOT_GROUPS_VALUE, Store.YES ) ); rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS_LIST, ArtifactInfo.lst2str( rootGroups ), Store.YES ) ); writeDocumentFields( rootGroupsFields ); } }
public void writeField( IndexableField field ) throws IOException { int flags = ( field.fieldType().indexed() ? F_INDEXED : 0 ) // + ( field.fieldType().tokenized() ? F_TOKENIZED : 0 ) // + ( field.fieldType().stored() ? F_STORED : 0 ); // // + ( false ? F_COMPRESSED : 0 ); // Compressed not supported anymore String name = field.name(); String value = field.stringValue(); dos.write( flags ); dos.writeUTF( name ); writeUTF( value, dos ); }
if ( writeDocument( r.document( i ) ) ) if ( writeDocument( r.document( i ) ) )
public int write( IndexingContext context, IndexReader indexReader, List<Integer> docIndexes ) throws IOException { writeHeader( context ); int n = writeDocuments( indexReader, docIndexes ); writeGroupFields(); close(); return n; }
void writeIndexData( IndexPackingRequest request, List<Integer> docIndexes, File targetArchive ) throws IOException { if ( targetArchive.exists() ) { targetArchive.delete(); } try ( OutputStream os = new FileOutputStream( targetArchive ) ) { IndexDataWriter dw = new IndexDataWriter( os ); dw.write( request.getContext(), request.getIndexReader(), docIndexes ); os.flush(); } }
public void writeGroupFields() throws IOException { { List<IndexableField> allGroupsFields = new ArrayList<>( 2 ); allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS, ArtifactInfo.ALL_GROUPS_VALUE, Store.YES ) ); allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS_LIST, ArtifactInfo.lst2str( allGroups ), Store.YES ) ); writeDocumentFields( allGroupsFields ); } { List<IndexableField> rootGroupsFields = new ArrayList<>( 2 ); rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS, ArtifactInfo.ROOT_GROUPS_VALUE, Store.YES ) ); rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS_LIST, ArtifactInfo.lst2str( rootGroups ), Store.YES ) ); writeDocumentFields( rootGroupsFields ); } }
public void writeDocumentFields( List<IndexableField> fields ) throws IOException { dos.writeInt( fields.size() ); for ( IndexableField field : fields ) { writeField( field ); } }
public void writeField( IndexableField field ) throws IOException { int flags = ( field.fieldType().indexOptions() != IndexOptions.NONE ? F_INDEXED : 0 ) // + ( field.fieldType().tokenized() ? F_TOKENIZED : 0 ) // + ( field.fieldType().stored() ? F_STORED : 0 ); // // + ( false ? F_COMPRESSED : 0 ); // Compressed not supported anymore String name = field.name(); String value = field.stringValue(); dos.write( flags ); dos.writeUTF( name ); writeUTF( value, dos ); }
if ( writeDocument( r.document( i ) ) ) if ( writeDocument( r.document( i ) ) )
public int write( IndexingContext context, IndexReader indexReader, List<Integer> docIndexes ) throws IOException { writeHeader( context ); int n = writeDocuments( indexReader, docIndexes ); writeGroupFields(); close(); return n; }
void writeIndexData( IndexPackingRequest request, List<Integer> docIndexes, File targetArchive ) throws IOException { if ( targetArchive.exists() ) { targetArchive.delete(); } OutputStream os = null; try { os = new FileOutputStream( targetArchive ); IndexDataWriter dw = new IndexDataWriter( os ); dw.write( request.getContext(), request.getIndexReader(), docIndexes ); os.flush(); } finally { IOUtil.close( os ); } }
writeDocumentFields( storedFields );
public void writeDocumentFields( List<IndexableField> fields ) throws IOException { dos.writeInt( fields.size() ); for ( IndexableField field : fields ) { writeField( field ); } }