Interface RotatePolicy

All Known Implementing Classes:
DateRotatePolicy, FileSizeRotatePolicy

public interface RotatePolicy
ログのローテーションを行うインタフェース。
ログのローテーションの種類毎に本インタフェースの実装クラスを作成する。
  • Method Summary

    Modifier and Type
    Method
    Description
    ローテーション先のファイル名を決定する。
    ログファイル読み込み時に出力する、ローテーションの設定情報を返す。
    void
    初期処理を行う。
    boolean
    needsRotate(String message, Charset charset)
    ローテーションが必要かの判定を行う。
    void
    ログファイル読み込み時に発生するイベント。
    ファイルサイズによるローテーションなどを独自で実装したい場合に使用する。
    void
    onWrite(String message, Charset charset)
    ログファイル書き込み時に発生するイベント。
    ファイルサイズによるローテーションなどを独自で実装したい場合に使用する。
    void
    rotate(String rotatedFilePath)
    ローテーションを行う。
  • Method Details

    • initialize

      void initialize(ObjectSettings settings)
      初期処理を行う。
      Parameters:
      settings - LogWriterの設定
    • needsRotate

      boolean needsRotate(String message, Charset charset)
      ローテーションが必要かの判定を行う。
      Parameters:
      message - ログファイルに書き込まれるメッセージ
      charset - 書き込み時に使用する文字エンコーディング
      Returns:
      ローテーションが必要な場合はtrue
    • decideRotatedFilePath

      String decideRotatedFilePath()
      ローテーション先のファイル名を決定する。
      Returns:
      ローテーション先のファイル名
    • rotate

      void rotate(String rotatedFilePath)
      ローテーションを行う。
      Parameters:
      rotatedFilePath - ローテーション先のファイルパス
    • getSettings

      String getSettings()
      ログファイル読み込み時に出力する、ローテーションの設定情報を返す。
      Returns:
      設定情報
      See Also:
    • onWrite

      void onWrite(String message, Charset charset)
      ログファイル書き込み時に発生するイベント。
      ファイルサイズによるローテーションなどを独自で実装したい場合に使用する。
      Parameters:
      message - ログファイルに書き込まれるメッセージ
      charset - 書き込み時に使用する文字エンコーディング
    • onOpenFile

      void onOpenFile(File file)
      ログファイル読み込み時に発生するイベント。
      ファイルサイズによるローテーションなどを独自で実装したい場合に使用する。
      Parameters:
      file - 読み込まれたファイル