@Test public void closeGracefullyHandlesException() throws InterruptedException { doThrow(new InterruptedException()).when(activeThreads).joinAll(); spl.close(); }
@Override public void close() { try { activeThreads.joinAll(); } catch (InterruptedException e) { } }
SpywarePluginLayer implements Closeable { @Override public void close() { try { activeThreads.joinAll(); } catch (InterruptedException e) { } } }
SpywarePluginLayer implements Closeable { @Override public void close() { try { activeThreads.joinAll(); } catch (InterruptedException e) { } } SpywarePluginLayer(ActiveThreadSet activeThreads, EventReceiver receiver, SnapshotTaker taker,
            DocumentChangeHandler documentHandler); }
SpywarePluginLayer implements Closeable { @Override public void close() { try { activeThreads.joinAll(); } catch (InterruptedException e) { } } SpywarePluginLayer(ActiveThreadSet activeThreads, EventReceiver receiver, SnapshotTaker taker,
            DocumentChangeHandler documentHandler); void takeSnapshot(SnapshotInfo info); void documentChange(DocumentInfo info); @Override void close(); }
SpywarePluginLayer implements Closeable { @Override public void close() { try { activeThreads.joinAll(); } catch (InterruptedException e) { } } SpywarePluginLayer(ActiveThreadSet activeThreads, EventReceiver receiver, SnapshotTaker taker,
            DocumentChangeHandler documentHandler); void takeSnapshot(SnapshotInfo info); void documentChange(DocumentInfo info); @Override void close();  }