47.3. メソッドのエイリアス

概要

Java API に表示される標準のメソッド名に加えて、与えられたメソッドに追加の名前 (エイリアス) を定義すると便利なことがよくあります。特に一般的なケースとして、プロパティー名 (例: widget) をアクセサーメソッド (getWidget または setWidget など) のエイリアスとして使用できるようにします。

構文

aliases 要素は、以下のように 1 つ以上の alias 子要素で定義できます。

<aliases>
  <alias>
    <methodPattern>MethodPattern</methodPattern>
    <methodAlias>Alias</methodAlias>
  </alias>
  ...
</aliases>

MethodPattern は、Java API からのメソッド名の照合に使用する正規表現 (java.util.regex 構文) です。パターンには通常、キャプチャーグループが含まれます。Alias は、(URI で使用するための) 代替式で、前述のキャプチャーグループのテキストを使用できます。たとえば、1 番目、2 番目、または 3 番目のキャプチャーグループのテキストは、$1$2、または $3 のように指定されます)。

スコープ

以下の抜粋で示されているように、aliases 要素は、任意で apis 要素の子や api 要素の子として表示できます。

<configuration>
  <apis>
    <api>
      <apiName>...</apiName>
      ...
      <aliases>...</aliases>
    </api>
    <aliases>...</aliases>
    ...
  </apis>
</configuration>

以下のスコープで aliases 要素を定義できます。

  • api 要素の子として: aliases マッピングは、api 要素で指定された API クラスにのみ適用されます。
  • apis 要素の子として: aliases マッピングはデフォルトですべての API クラスに適用されますが、api レベルで上書きできます。

以下の例は、一般的な get/set bean メソッドパターンのエイリアスを生成する方法を示しています。

<aliases>
  <alias>
    <methodPattern>[gs]et(.+)</methodPattern>
    <methodAlias>$1</methodAlias>
  </alias>
</aliases>

前述のエイリアス定義では、getWidget または setWidget のいずれかのメソッドのエイリアスとして widget を使用できます。メソッド名の後半部分をキャプチャーするために 、キャプチャーグループ (.+) を使用していることに注意してください (例: Widget)。