豆無日記スマートフォン用の表示で見る豆無日記この広告は、90日以上更新していないブログに表示しています。2007-01-28BuriActivitySelectorの動作とAPIについてburi#ほとんど、id:makotanさんへの業務連絡なエントリです。まくらBaoメソッドの_ACTIVITYアノテーションの値とか、データが現在とどまっているアクティビティ(ステータス)とか、ロール(Participant)とかを元に、今の処理で実行対象とすべきアクティビティを選択/限定していくのがBuriActivitySelectorの役目なわけで。問題&対処方法(暫定)で、本題ですが、ParticipantBuriActivitySelectorが(私の)期待する動作をしてくれません。事象としては以下の通り。してそれまでのアクティビティセットにORマージしてるので、結果的に絞り込まれない。activities.clear()することで大本のSetを空にしてから返しているので、うまいこといっているようです。1行を追加すれば修正されると思います。実験したところ実際に期待通りになりました。考え方に問題がなければ、これをコミットしたいと思いますがいかがでしょうか?>id:makotanさん実は、もう一つ対処案があるので、↓もご検討いただけると幸いです。対処方法(案)Selectorが結局フィルタのように働くわけですよね。入力:(先に実行されたSelectorによって返された結果の)アクティビティセット出力:自前のルールに則って決定したアクティビティセットで、あるSelectorが結果として返したアクティビティセットというのは、それ自体が最終的な結果になるべきセットなのではないかと思いました。何が言いたいかというと、BuriActivitySelector#select()側では毎回getActivityList()が返した結果でactivitiesを差し替える(現状はSelector実装側が必要に応じて第1引数のSetをclear()する作りになっている)という実装がいいのではないかと。逆に、BuriActivitySelector#select()側からgeActivityList()にアクティビティセットのインスタンスを渡すから、後は参照経由で自由にセット内容を書き換えてもらう。(現状は戻り値でListを返してもらって適用はselect()側の責務になっている)としてしまうとか。applyRule()みたいにしてしまうとよりわかりやすいかと思います。後者の場合、ソースはこんな感じになります。千秋楽はMariottホテルで月別アーカイブはてなブログをはじめよう!nobeansさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。