org.opengion.fukurou.taglet

## クラス DocletUtil

- java.lang.Object
- - org.opengion.fukurou.taglet.DocletUtil

-     public final class DocletUtil
      extends Object

       Doclet を処理するプログラムで共通して使用される簡易メソッド群(ユーティリティクラス)です。

  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### メソッドのサマリー

    すべてのメソッド staticメソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `static String` | `doc03LinkTag(String txt)` {@og.doc03Link queryType Query_****クラス} 形式のdoc03Linkタグをリンク文字列に置き換えます。
    `static String` | `doc03LinkTag(com.sun.javadoc.Tag tag)` {@og.doc03Link queryType Query_**** クラス} 形式のdoc03Linkタグをリンク文字列に置き換えます。
    `static String` | `getOption(String key, String[][] options)` オプション配列文字列より、指定のキーに対応するオプション値を返します。
    `static String` | `getStaticField(String cls, String fld)` パッケージ.クラス名 と、フィールド名 から、staticフィールドの値を取得します。
    `static String` | `linkTag(String txt)` このタグレットがインラインタグで {@link XXXX YYYY} を処理するように 用意された、カスタムメソッドです。
    `static String` | `removeSetter(String target)` セッターメソッドの setXXXX の set を削除し、次の文字を小文字化します。
    `static String` | `replace(String target, String from, String to)` target 文字列に含まれる from 文字列を to 文字列に置き換えます。
    `static String` | `valueTag(String txt, com.sun.javadoc.Tag tag)` {@og.value package.class#field} 形式のvalueタグを文字列に置き換えます。
    `static String` | `valueTag(com.sun.javadoc.Tag tag)` {@og.value package.class#field} 形式のvalueタグを文字列に置き換えます。

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

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

- - ### メソッドの詳細

    - #### replace

          public static String replace(String target,
                                       String from,
                                       String to)

      target 文字列に含まれる from 文字列を to 文字列に置き換えます。
      パラメータ:
        `target` - 元の文字列
        `from` - 置換元FROM
        `to` - 置換先TO
      戻り値:
        変換後文字列

    - #### removeSetter

          public static String removeSetter(String target)

      セッターメソッドの setXXXX の set を削除し、次の文字を小文字化します。 つまり、セッターメソッドから属性値を推測します。 (超特殊処理)セッターメソッドのset以下２文字目が大文字の場合は、 １文字目も大文字と考えて小文字化を行いません。 例えば、setSYS や setUSER など、RequestValueTag.javaに使用するケースです。
      パラメータ:
        `target` - 処理対象となる文字列
      戻り値:
        オプション文字列

    - #### getOption

          public static String getOption(String key,
                                         String[][] options)

      オプション配列文字列より、指定のキーに対応するオプション値を返します。
      パラメータ:
        `key` - キー
        `options` - オプション配列文字列
      戻り値:
        オプション文字列

    - #### valueTag

          public static String valueTag(com.sun.javadoc.Tag tag)

      {@og.value package.class#field} 形式のvalueタグを文字列に置き換えます。 処理的には、リフレクションで、値を取得します。値は、staticフィールドのみ取得可能です。
      パラメータ:
        `tag` - Tagオブジェクト
      戻り値:
        valueタグの解析結果の文字列
      変更履歴:

        5.5.4.1 (2012/07/06) 新規追加
        5.5.5.6 (2012/08/31) クラス名の取得で、ProgramElementDoc で処理するように変更

    - #### valueTag

          public static String valueTag(String txt,
                                        com.sun.javadoc.Tag tag)

      {@og.value package.class#field} 形式のvalueタグを文字列に置き換えます。 処理的には、リフレクションで、値を取得します。値は、staticフィールドのみ取得可能です。
      パラメータ:
        `txt` - Tagテキスト (og.value 以下の文字列のみ)
        `tag` - Tagオブジェクト (正確な class 名を求める場合に使用)
      戻り値:
        valueタグの解析結果の文字列
      変更履歴:

        5.5.4.1 (2012/07/06) 新規追加
        5.5.5.6 (2012/08/31) クラス名の取得で、ProgramElementDoc で処理するように変更
        6.3.5.1 (2015/08/12) HybsSystem とSystemData のみパッケージ無しでも処理できるように対応

    - #### doc03LinkTag

          public static String doc03LinkTag(com.sun.javadoc.Tag tag)

      {@og.doc03Link queryType Query_**** クラス} 形式のdoc03Linkタグをリンク文字列に置き換えます。 Query_**** クラス のようなリンクを作成します。 第一引数は、VALUENAME の引数です。 それ以降のテキストは、リンク文字列のドキュメントになります。 DOC03 画面へのリンクを作成するに当たり、バージョンが必要です。org.opengion.fukurou.system.BuildNumber#VERSION_NO から取得しますが、 パッケージの優先順の関係で、リフレクションを使用します。
      パラメータ:
        `tag` - Tagオブジェクト
      戻り値:
        valueタグの解析結果の文字列
      変更履歴:

        5.6.3.3 (2013/04/19) 新規作成
        6.0.2.0 (2014/09/19) 処理を #doc03LinkTag( String ) で行う。

      このメソッドは、nullを返しません

    - #### doc03LinkTag

          public static String doc03LinkTag(String txt)

      {@og.doc03Link queryType Query_****クラス} 形式のdoc03Linkタグをリンク文字列に置き換えます。 <a href="/gf/jsp/DOC03/index.jsp?command=NEW&GAMENID=DOC03&VERNO=X.X.X.X&VALUENAME=queryType" target="CONTENTS" >Query_****クラス</a> のようなリンクを作成します。 第一引数は、VALUENAME の引数です。 それ以降のテキストは、リンク文字列のドキュメントになります。 DOC03 画面へのリンクを作成するに当たり、バージョンが必要です。 org.opengion.fukurou.system.BuildNumber#VERSION_NO から取得しますが、 パッケージの優先順の関係で、リフレクションを使用します。
      パラメータ:
        `txt` - Tagテキスト(og.doc03Link 以下の文字列のみ)
      戻り値:
        valueタグの解析結果の文字列
      変更履歴:

        6.0.2.0 (2014/09/19) 新規追加

      このメソッドは、nullを返しません

    - #### linkTag

          public static String linkTag(String txt)

      このタグレットがインラインタグで {@link XXXX YYYY} を処理するように 用意された、カスタムメソッドです。
      パラメータ:
        `txt` - オリジナルの文字列
      戻り値:
        インラインタグの link を処理した結果の文字列
      変更履歴:

        6.0.2.0 (2014/09/19) 新規追加

      このメソッドは、nullを返しません

    - #### getStaticField

          public static String getStaticField(String cls,
                                              String fld)

      パッケージ.クラス名 と、フィールド名 から、staticフィールドの値を取得します。 Field fldObj = Class.forName( cls ).getDeclaredField( fld ); で、Fieldオブジェクトを呼出し、 String.valueOf( fldObj.get( null ) ); で、値を取得しています。 static フィールドは、引数 null で値を取得できます。 ※ 超特殊処理として、cls名が、HybsSystem とSystemData のみ、パッケージ無しで処理 できるように対応します。 例； String cls = "org.opengion.fukurou.system.BuildNumber"; // package.class String fld = "VERSION_NO"; // field
      パラメータ:
        `cls` - パッケージ.クラス名
        `fld` - フィールド名
      戻り値:
        取得値
      変更履歴:

        5.6.3.3 (2013/04/19) 新規作成
        6.4.2.0 (2016/01/29) StringUtil#ogStackTrace(Throwable) を、ThrowUtil#ogStackTrace(String,Throwable) に置き換え。

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.