IndexUtils.packIndexArchive( indexingContext.getIndexDirectory(), os );
private IndexingContext mergeContexts( IndexingContext... contexts ) throws IOException { IndexingContext mergedContext = null; for ( IndexingContext context : contexts ) { if ( mergedContext == null ) { mergedContext = getTempContext( context ); } mergedContext.merge( context.getIndexDirectory() ); } return mergedContext; }
Directory.copy( context.getIndexDirectory(), directory, false ); context.replace( tmpContext.getIndexDirectory() );
/** * Pack legacy index archive into a specified output stream */ public static void packIndexArchive( IndexingContext context, OutputStream os ) throws IOException { File indexArchive = File.createTempFile( "nexus-index", "" ); File indexDir = new File( indexArchive.getAbsoluteFile().getParentFile(), indexArchive.getName() + ".dir" ); indexDir.mkdirs(); FSDirectory fdir = FSDirectory.getDirectory( indexDir ); try { // force the timestamp update IndexUtils.updateTimestamp( context.getIndexDirectory(), context.getTimestamp() ); IndexUtils.updateTimestamp( fdir, context.getTimestamp() ); copyLegacyDocuments( context.getIndexReader(), fdir, context ); packDirectory( fdir, os ); } finally { IndexUtils.close( fdir ); indexArchive.delete(); IndexUtils.delete( indexDir ); } }
public void scanningStarted(IndexingContext ctx) { handle = ProgressHandleFactory.createHandle("Indexing Repo : " + (ri!=null? ri.getName() : indexingContext.getId())); if (debug) { writer.println("Indexing Repo : " + (ri!=null? ri.getName():ctx.getId())); writer.println("Index Directory : " + ctx.getIndexDirectory().toString()); writer.println("--------------------------------------------------------"); writer.println("Scanning started at " + SimpleDateFormat.getInstance().format(new Date())); } handle.start(); handle.switchToIndeterminate(); tstart = System.currentTimeMillis(); }
if ( context == null || context.getIndexDirectory() == null )
IndexingContext remoteContext = getRepositoryRemoteIndexContext( repository ); groupContext.merge( localContext.getIndexDirectory() ); groupContext.merge( remoteContext.getIndexDirectory() );