jp.sourceforge.deployer
クラス FileMonitor

java.lang.Object
  上位を拡張 jp.sourceforge.deployer.FileMonitor

public final class FileMonitor
extends Object

ファイルの作成、更新、削除を監視し、イベントを通知します。

monitor()メソッドの呼び出しでファイルを一回監視することが出来ます。ファイルを定期的に監視する場合、定期的にmonitor()メソッドを呼び出してください。

バージョン:
$Rev$
作成者:
$Author$

コンストラクタの概要
FileMonitor(File baseDirectory)
           指定したディレクトリの全てのファイルを監視するFileMonitorインスタンスを初期化します。
FileMonitor(File baseDirectory, Pattern filePattern)
           指定したディレクトリの指定したパターンに合致するファイルを監視するFileMonitorインスタンスを初期化します。
 
メソッドの概要
 void addListener(FileMonitorListener listener)
           ファイルの作成、更新、削除を認識したときにイベントが通知されるリスナーを追加します。
 String getHashAlgorithm()
           ファイルの内容を比較するときに使用するハッシュ・アルゴリズムを取得します。
 boolean isCheckContent()
           ファイルの内容(ハッシュ値)を監視するかどうかを取得します。
 boolean isCheckLastModified()
           最終更新日時を監視するかどうかを取得します。
 boolean isCheckLength()
           ファイル・サイズを監視するかどうかを取得します。
 void monitor()
           ファイルの作成、更新、削除を監視し、リスナーにイベントを通知します。
 void removeListener(FileMonitorListener listener)
           登録されているリスナーを削除します。
 void setCheckContent(boolean checkContent)
           ファイルの内容(ハッシュ値)を監視するかどうかを設定します。
 void setCheckLastModified(boolean checkLastModified)
           最終更新日時を監視するかどうかを設定します。
 void setCheckLength(boolean checkLength)
           ファイル・サイズを監視するかどうかを設定します。
 void setHashAlgorithm(String hashAlgorithm)
           ファイルの内容を比較するときに使用するハッシュ・アルゴリズムを設定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

FileMonitor

public FileMonitor(File baseDirectory,
                   Pattern filePattern)

指定したディレクトリの指定したパターンに合致するファイルを監視するFileMonitorインスタンスを初期化します。

パラメータ:
baseDirectory - 監視するディレクトリ。
nullの場合、IllegalArgumentException例外をスローします。
ディレクトリを表していない場合、IllegalArgumentException例外をスローします。
filePattern - 監視するファイルのパターンを表す正規表現。絶対パスと比較されます。
nullの場合、IllegalArgumentException例外をスローします。

FileMonitor

public FileMonitor(File baseDirectory)

指定したディレクトリの全てのファイルを監視するFileMonitorインスタンスを初期化します。

このコンストラクタ呼び出しは、以下のコードと等価です。

 new FileMonitor(baseDirectory, Pattern.compile(".*"))
 

パラメータ:
baseDirectory - 監視するディレクトリ。
nullの場合、IllegalArgumentException例外をスローします。
ディレクトリを表していない場合、IllegalArgumentException例外をスローします。
メソッドの詳細

isCheckLength

public boolean isCheckLength()

ファイル・サイズを監視するかどうかを取得します。初期値はtrueです。

戻り値:
ファイル・サイズを監視する場合はtrue、監視しない場合はfalse。

setCheckLength

public void setCheckLength(boolean checkLength)

ファイル・サイズを監視するかどうかを設定します。

パラメータ:
checkLength - ファイル・サイズを監視する場合はtrue、監視しない場合はfalse。

isCheckLastModified

public boolean isCheckLastModified()

最終更新日時を監視するかどうかを取得します。初期値はtrueです。

戻り値:
最終更新日時を監視する場合はtrue、監視しない場合はfalse。

setCheckLastModified

public void setCheckLastModified(boolean checkLastModified)

最終更新日時を監視するかどうかを設定します。

パラメータ:
checkLastModified - 最終更新日時を監視する場合はtrue、監視しない場合はfalse。

isCheckContent

public boolean isCheckContent()

ファイルの内容(ハッシュ値)を監視するかどうかを取得します。初期値はfalseです。

戻り値:
ファイルの内容を監視する場合はtrue、監視しない場合はfalse。

setCheckContent

public void setCheckContent(boolean checkContent)

ファイルの内容(ハッシュ値)を監視するかどうかを設定します。

ファイルの内容を監視すると、監視のパフォーマンスが低下する場合があります。

パラメータ:
checkContent - ファイルの内容を監視する場合はtrue、監視しない場合はfalse。

getHashAlgorithm

public String getHashAlgorithm()

ファイルの内容を比較するときに使用するハッシュ・アルゴリズムを取得します。初期値は"MD5"です。

戻り値:
ハッシュ・アルゴリズム。

setHashAlgorithm

public void setHashAlgorithm(String hashAlgorithm)

ファイルの内容を比較するときに使用するハッシュ・アルゴリズムを設定します。

ハッシュ値の計算はMessageDigestクラスを使用します。従って、このメソッドで指定するハッシュ・アルゴリズムはMessageDigestクラスがサポートするアルゴリズムである必要があります。MessageDigestクラスがサポートしないハッシュ・アルゴリズムを設定した場合、monitor()メソッドの呼び出しでFileMonitorFailException例外がスローされる可能性があります。

パラメータ:
hashAlgorithm - ハッシュ・アルゴリズム。

addListener

public void addListener(FileMonitorListener listener)

ファイルの作成、更新、削除を認識したときにイベントが通知されるリスナーを追加します。

このメソッドはスレッドセーフです。

パラメータ:
listener - イベントが通知されるリスナー。
nullの場合、IllegalArgumentException例外をスローします。

removeListener

public void removeListener(FileMonitorListener listener)

登録されているリスナーを削除します。

このメソッドはスレッドセーフです。

パラメータ:
listener - 削除するリスナー。

monitor

public void monitor()
             throws FileMonitorFailException

ファイルの作成、更新、削除を監視し、リスナーにイベントを通知します。

例外:
FileMonitorFailException - ファイルの監視に失敗した場合。


Copyright © 2007 uguu. All Rights Reserved.