ParticipantProvider に関する変更案
関連クラスがいくつかs2coffeeプロジェクト側にまたいでいるので、直接コミットせずにメールで送らせていただきました。
変更点について簡単に説明します。
コミット判断はお任せしますので、よろしくお願いします。m(_ _)m
もしs2coffee側のコミットと多少時間が開いても問題ないようであれば、GOサインだけいただければs2buri側はこちらでコミットします。
主な変更点
- ParticipantProviderのインタフェース簡略化
- ParticipantContextに格納されている情報を正規化(?)
- UserData(DTO)は、(current)UserIdがあれば、ParticipantProvider#getUserData()で取得できるので、導出項目と見なして思い切って消してみました。
- RoleInfo→IdentityInfo
- Java5のGenerics/@Override/拡張forループへの対応
- 別の理由で手をつけたクラスについては、できるだけこの対応を盛り込みました。(今回はこの理由のためだけの修正はできるだけ行わないようにしています)
- userIdという名前
- ぶり側管理のユーザID(buriUserId)と、アプリ側管理のユーザID(appUserId)を区別するようにしました。
- ただし、s2coffee系クラスはより抽象化されたAPIという意識なので、アプリ側に依存するような概念はいれたくないということで、「userId」として「app」はつけていません。
- ぶり側のユーザIDがlong/Longなのに対して、アプリ側のユーザIDはIdenitityInfo型になっています。
- Javadocを追加
- BuriUserUtil, IdentityInfo, ParticipantProvider, ParticipantContext
- 基本的にインタフェースと実装クラスに分かれている場合はインタフェースのみにJavadocを書いています。
- Javadocは http://www.seasar.org/wiki/index.php?SeasarJavadocProject を参考にさせていただいてます。
その他
- 関連する各種クラス(Util)なども併せて修正しています。
- Participantは、適切な訳が思いつかなかったので「権限主体」と訳してみました。RoleはParticipantの1つだと思うので、「ロール」というのは限定しすぎた表現かなぁと。
- まだ統一できてませんが、"ID","Id"の文言揺れは、最終的に"Id"に統一したいなぁという方向です。