パッケージ org.opengion.fukurou.fileexec

# クラス XLogger

java.lang.Object
org.opengion.fukurou.fileexec.XLogger

public class XLogger extends Object
XLoggerは、Throwable を引数に取るwarningと、Level 600 の debug メソッドを 持つ、Logger の拡張クラスです。 ここでは、継承するのではなく、委譲で、最低限のメソッドだけに対応しています。 (LogManager とか、色々とややこしそうなので、調査する暇が無い) WARNING(900) → INFO(800) → CONFIG(700) → XXXX(600) → FINE(500) → ALL(Integer.MIN_VALUE) となっていますが、FINE では、多すぎ、INFO は、通常使用、間に、DEBUG的な、 ロギングが欲しい場合に使用します。 CONFIG を使いたいところですが、｢CONFIGは静的な構成メッセージのメッセージ・レベルです。｣と JavaDocにわざわざ、書かれていることから、使用を避けます。

変更履歴:
  7.0.0.0 (2017/07/07) 新規作成
導入されたバージョン:
  JDK1.8,

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `void`
  `debug(int num, Function<Integer,String> msgFunction)`
  数値の変数を受け取って表示する、600 レベルのログをとります。
  `void`
  `debug(Supplier<String> msgSupplier)`
  600 レベルのログをとります。
  `static XLogger`
  `getLogger(String name)`
  名前を指定して、XLoggerオブジェクトを作成します。
  `void`
  `info(Supplier<String> msgSupplier)`
  INFO レベルのログをとります。
  `boolean`
  `isDebugEnabled()`
  WARNING レベルのログが、処理されるか、判定します。
  `boolean`
  `isWarningEnabled()`
  WARNING レベルのログが、処理されるか、判定します。
  `void`
  `warning(String id, Object... args)`
  WARNING レベルのログをとります。
  `void`
  `warning(Throwable th, String id, Object... args)`
  WARNING レベルのログをとります。
  `void`
  `warning(Throwable th, Supplier<String> msgSupplier)`
  WARNING レベルのログをとります。
  `void`
  `warning(Supplier<String> msgSupplier)`
  WARNING レベルのログをとります。

  ### クラスから継承されたメソッド java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## メソッドの詳細

  - ### getLogger

    public static XLogger getLogger(String name)
    名前を指定して、XLoggerオブジェクトを作成します。
    パラメータ:
      `name` - ロガーの名前。通常は、クラス.class.getName() を渡せばよいです。
    戻り値:
      XLoggerオブジェクト
    変更履歴:
      7.2.1.0 (2020/03/13) ロガーの名前から、共通部分を削除します。, 7.2.5.0 (2020/06/01) 各クラスで、class.getSimpleName() を渡すようにした。

  - ### info

    public void info(Supplier<String> msgSupplier)
    INFO レベルのログをとります。 引数は Supplier のみなので、実行直前まで処理されません。 よって、呼出元では、log level guards する必要はありません。
    パラメータ:
      `msgSupplier` - 呼び出されると、目的のログ・メッセージを生成する関数
    関連項目:
      - `Logger.info(Supplier)`
    変更履歴:
      7.3.0.0 (2021/01/06) PMD:GuardLogStatement: Logger calls should be surrounded by log level guards.

  - ### warning

    public void warning(Supplier<String> msgSupplier)
    WARNING レベルのログをとります。 引数は Supplier のみなので、実行直前まで処理されません。 よって、呼出元では、log level guards する必要はありません。
    パラメータ:
      `msgSupplier` - 呼び出されると、目的のログ・メッセージを生成する関数
    関連項目:
      - `Logger.warning(Supplier)`
    変更履歴:
      7.3.0.0 (2021/01/06) PMD:GuardLogStatement: Logger calls should be surrounded by log level guards.

  - ### isWarningEnabled

    public boolean isWarningEnabled()
    WARNING レベルのログが、処理されるか、判定します。 引数が Supplier のみでない場合は、実行前に、log level guards してください。
    戻り値:
      args WARNINGレベルのログを出力する場合は、trueを返します。
    変更履歴:
      7.3.0.0 (2021/01/06) 新規追加

  - ### warning

    public void warning(String id, Object... args)
    WARNING レベルのログをとります。 引数処理が発生しますので、呼出元で、log level guards してください。 if( XLogger.isWarningEnabled() ) { XLogger.warning( id,args1,args2,… ); }
    パラメータ:
      `id` - リソースのキーとなるID。
      `args` - リソースを、MessageFormat.format で加工する場合の引数。
    関連項目:
      - `Logger.warning(Supplier)`
    変更履歴:
      7.2.5.0 (2020/06/01) メソッド追加。

  - ### warning

    public void warning(Throwable th, Supplier<String> msgSupplier)
    WARNING レベルのログをとります。 これは、Throwable を引数に取る拡張されたメソッドです。 引数処理が発生しますので、呼出元で、log level guards してください。
    パラメータ:
      `th` - ログ・メッセージに関連したThrowable。
      `msgSupplier` - 呼び出されると、目的のログ・メッセージを生成する関数
    関連項目:
      - `Logger.log(Level,Throwable,Supplier)`

  - ### warning

    public void warning(Throwable th, String id, Object... args)
    WARNING レベルのログをとります。 これは、Throwable を引数に取る拡張されたメソッドです。 引数処理が発生しますので、呼出元で、log level guards してください。
    パラメータ:
      `th` - 発生元のThrowable( null値は許容されます )
      `id` - リソースのキーとなるID。
      `args` - リソースを、MessageFormat.format で加工する場合の引数。
    関連項目:
      - `Logger.log(Level,Throwable,Supplier)`
    変更履歴:
      7.2.5.0 (2020/06/01) メソッド追加。

  - ### debug

    public void debug(Supplier<String> msgSupplier)
    600 レベルのログをとります。 Supplierを引数に、Level = 600 のログをとります。 引数は Supplier のみなので、実行直前まで処理されません。 よって、呼出元では、log level guards する必要はありません。
    パラメータ:
      `msgSupplier` - 呼び出されると、目的のログ・メッセージを生成する関数
    関連項目:
      - `Logger.log(Level,Supplier)`
    変更履歴:
      7.3.0.0 (2021/01/06) PMD:GuardLogStatement: Logger calls should be surrounded by log level guards.

  - ### isDebugEnabled

    public boolean isDebugEnabled()
    WARNING レベルのログが、処理されるか、判定します。 引数が Supplier のみでない場合は、実行前に、log level guards してください。
    戻り値:
      args WARNINGレベルのログを出力する場合は、trueを返します。
    変更履歴:
      7.3.0.0 (2021/01/06) 新規追加

  - ### debug

    public void debug(int num, Function<Integer,String> msgFunction)
    数値の変数を受け取って表示する、600 レベルのログをとります。 Supplierを引数に、Level = 600 のログをとります。 関数型インタフェースは引数にfinal変数しか使えませんが、数値は大抵可変なので final化せずに、引数として渡すことが出来るようにします。 引数処理が発生しますので、呼出元で、log level guards してください。
    パラメータ:
      `num` - 数値引数
      `msgFunction` - 呼び出されると、目的のログ・メッセージを生成する関数
    関連項目:
      - `Logger.log(Level,Supplier)`
    変更履歴:
      7.2.5.0 (2020/06/01) メソッド追加。