jodd.io
Class FileMonitor

java.lang.Object
  extended by jodd.io.FileMonitor

public class FileMonitor
extends java.lang.Object

Monitoring disk files changes. Change event is broadcasted to all registered listeners.

See Also:
FileChangeListener

Nested Class Summary
protected  class FileMonitor.FileMonitorNotifier
          Actual file monitor timer task.
 
Field Summary
protected  java.util.Map<java.io.File,java.lang.Long> files
           
protected  java.util.Set<FileChangeListener> listeners
           
protected  java.lang.Object lock
           
protected  long pollingInterval
           
protected  java.util.Timer timer
           
 
Constructor Summary
FileMonitor(long pollingInterval)
          Creates a file monitor instance with specified polling interval in ms.
 
Method Summary
 void monitorFile(java.io.File file)
          Adds file to listen for.
 void registerListener(FileChangeListener fileChangeListener)
          Adds listener to this file monitor.
 void releaseFile(java.io.File file)
          Removes specified file for listening.
 void removeAllListeners()
          Removes all file listeners/
 void removeListener(FileChangeListener fileChangeListener)
          Removes listener from this file monitor.
 void start()
          Starts the file monitoring polling, after it was stopped.
 void stop()
          Stops the file monitor polling.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

files

protected final java.util.Map<java.io.File,java.lang.Long> files

listeners

protected final java.util.Set<FileChangeListener> listeners

pollingInterval

protected final long pollingInterval

timer

protected java.util.Timer timer

lock

protected final java.lang.Object lock
Constructor Detail

FileMonitor

public FileMonitor(long pollingInterval)
Creates a file monitor instance with specified polling interval in ms.

Method Detail

start

public void start()
Starts the file monitoring polling, after it was stopped.


stop

public void stop()
Stops the file monitor polling.


monitorFile

public void monitorFile(java.io.File file)
Adds file to listen for. File may be any file or folder, including a non-existing file in the case where the creating of the file is to be trapped.


releaseFile

public void releaseFile(java.io.File file)
Removes specified file for listening.


registerListener

public void registerListener(FileChangeListener fileChangeListener)
Adds listener to this file monitor.


removeListener

public void removeListener(FileChangeListener fileChangeListener)
Removes listener from this file monitor.


removeAllListeners

public void removeAllListeners()
Removes all file listeners/



Copyright © 2003-2012 Jodd Team