@Override
    protected void watch(final Application application, final Local temporary, final FileWatcherListener listener, final ApplicationQuitCallback quit) throws IOException {
        if(log.isDebugEnabled()) {
            log.debug(String.format("Register %s in file watcher %s", temporary, watcher));
        }
        Uninterruptibles.awaitUninterruptibly(watcher.register(temporary, listener));
        if(log.isDebugEnabled()) {
            log.debug(String.format("Successfully registered %s in file watcher %s", temporary, watcher));
        }
    }
@Test(expected = NoSuchFileException.class)
    public void testNotfound() throws Exception {
        final DefaultWatchEditor editor = new DefaultWatchEditor(new Host(new TestProtocol()), new Path("/remote", EnumSet.of(Path.Type.file)), new DisabledListProgressListener());
        editor.watch(new Application("com.app"), new Local(System.getProperty("java.io.tmpdir") + "/notfound", UUID.randomUUID().toString()), new DisabledFileWatcherListener(),
                new DisabledApplicationQuitCallback());
    }