static void onFileChange(double seconds, final File file, final long lastModificationSeen, final Runnable r) { doEvery_daemon(toMS(seconds), new Runnable { long lastMod = lastModificationSeen; public void run() { long mod = file.lastModified(); if (mod != lastMod) { lastMod = mod; call(r); } } }); call(r); }