private void updateIndex(ReadableWaveletData wavelet) throws IndexException { Preconditions.checkNotNull(wavelet); try { // TODO (Yuri Z): Update documents instead of totally removing and adding. removeIndex(wavelet, nrtManager); addIndex(wavelet, nrtManager); indexWriter.commit(); } catch (IOException e) { throw new IndexException(String.valueOf(wavelet.getWaveletId()), e); } }
private static void addIndex(ReadableWaveletData wavelet, NRTManager nrtManager) throws IOException { Document doc = new Document(); addWaveletFieldsToIndex(wavelet, doc); nrtManager.addDocument(doc); }
@Override protected PerUserWaveViewHandler createPerUserWaveViewHandler() { handler = new LucenePerUserWaveViewHandlerImpl(directory, waveletProvider, DOMAIN, Executors.newCachedThreadPool()); return handler; }
@Override protected void postUpdateHook() { try { handler.forceReopen(); } catch (IOException e) { throw new RuntimeException(e); } } }
@Override protected PerUserWaveViewHandler createPerUserWaveViewHandler() { handler = new LucenePerUserWaveViewHandlerImpl(directory, waveletProvider, DOMAIN, Executors.newCachedThreadPool()); return handler; }
@Override protected void postUpdateHook() { try { handler.forceReopen(); } catch (IOException e) { throw new RuntimeException(e); } } }