/** * Test add/remove listeners. */ @Test public void testAddRemoveListeners() { final FileAlterationObserver observer = new FileAlterationObserver("/foo"); // Null Listener observer.addListener(null); assertFalse("Listeners[1]", observer.getListeners().iterator().hasNext()); observer.removeListener(null); assertFalse("Listeners[2]", observer.getListeners().iterator().hasNext()); // Add Listener final FileAlterationListenerAdaptor listener = new FileAlterationListenerAdaptor(); observer.addListener(listener); final Iterator<FileAlterationListener> it = observer.getListeners().iterator(); assertTrue("Listeners[3]", it.hasNext()); assertEquals("Added", listener, it.next()); assertFalse("Listeners[4]", it.hasNext()); // Remove Listener observer.removeListener(listener); assertFalse("Listeners[5]", observer.getListeners().iterator().hasNext()); }
public List<FileObserverListener> getFileObserverListeners() { List<FileObserverListener> listeners = new ArrayList<FileObserverListener>(); // TODO check if this interface casting is allowed for (FileAlterationListener listener : observer.getListeners()) { listeners.add((FileObserverListener) listener); } return listeners; }
void stop() { logger.trace("Stopping TorrentFileProvider."); this.observer.getListeners().forEach(observer::removeListener); try { this.monitor.stop(10); } catch (final Exception ignored) { } logger.trace("TorrentFileProvider stopped."); }