@Test public void testRegister_fileIsNotDirectory() throws IOException { Path path = fs.getPath("/a.txt"); Files.createFile(path); try { watcher.register(path, ImmutableList.of(ENTRY_CREATE)); fail(); } catch (NotDirectoryException expected) { } }
@Override public Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes) throws IOException { JimfsPath path = checkWatchable(watchable); Key key = super.register(path, eventTypes); Snapshot snapshot = takeSnapshot(path); synchronized (this) { snapshots.put(key, snapshot); if (pollingFuture == null) { startPolling(); } } return key; }
PollingWatchService extends AbstractWatchService { @Override public Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes) throws IOException { JimfsPath path = checkWatchable(watchable); Key key = super.register(path, eventTypes); Snapshot snapshot = takeSnapshot(path); synchronized (this) { snapshots.put(key, snapshot); if (pollingFuture == null) { startPolling(); } } return key; } }
PollingWatchService extends AbstractWatchService { @Override public Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes) throws IOException { JimfsPath path = checkWatchable(watchable); Key key = super.register(path, eventTypes); Snapshot snapshot = takeSnapshot(path); synchronized (this) { snapshots.put(key, snapshot); if (pollingFuture == null) { startPolling(); } } return key; } PollingWatchService(
      FileSystemView view,
      PathService pathService,
      FileSystemState fileSystemState,
      long interval,
      TimeUnit timeUnit); }
PollingWatchService extends AbstractWatchService { @Override public Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes) throws IOException { JimfsPath path = checkWatchable(watchable); Key key = super.register(path, eventTypes); Snapshot snapshot = takeSnapshot(path); synchronized (this) { snapshots.put(key, snapshot); if (pollingFuture == null) { startPolling(); } } return key; } PollingWatchService(
      FileSystemView view,
      PathService pathService,
      FileSystemState fileSystemState,
      long interval,
      TimeUnit timeUnit); @Override Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes); @Override synchronized void cancelled(Key key); @Override void close(); }
PollingWatchService extends AbstractWatchService { @Override public Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes) throws IOException { JimfsPath path = checkWatchable(watchable); Key key = super.register(path, eventTypes); Snapshot snapshot = takeSnapshot(path); synchronized (this) { snapshots.put(key, snapshot); if (pollingFuture == null) { startPolling(); } } return key; } PollingWatchService(
      FileSystemView view,
      PathService pathService,
      FileSystemState fileSystemState,
      long interval,
      TimeUnit timeUnit); @Override Key register(Watchable watchable, Iterable<? extends WatchEvent.Kind<?>> eventTypes); @Override synchronized void cancelled(Key key); @Override void close();  }