Springでお話しさせていただいた様に、デリゲートとpreloadの組合せによって実現されます。Alpha3では、RSS出力機能もこのデリゲートによる実装がなされています。XOOPSからのRSS出力は、backend.phpによって行われているわけですが、XOOPS2.0.xまではあくまでも、newsモジュール専用でしかありませんでした。Cube2.1ではnewsモジュールは同梱されないでので、今までのbackend.phpの機能自体は意味のない事になります。そこで、backend.php自体がすべてのモジュールに対して開放される事になり、この実現手段として、デリゲートを使用しているわけですRSSの出力に関連して発行されるイベントは、Legacypage.Backend.AccessModule.Legacy.Backend.getRSSの2種類です。モジュール開発者向けに用意されたイベントです。モジュール開発者が、このイベントを受け取ってモジュールの最新情報を変えるデリゲートを用意する事によって、backend.php経由で更新情報をFeedすることが可能になります。いうファイル名で置くことによって、/backend.phpにアクセスする事で、Bulletinモジュールの更新情報がRSS2.0形式にて出力されます。これは、今までもBopCommentsモジュールやWhatsNewモジュールなどに対して各モジュール開発者などがプラグインを提供する事によって、各モジュールの更新情報を一元的に発信できていたのと、基本的には同じ考え方です。Cube2.1のさらなる柔軟な点は、これらBopComments等の更新管理ツールに対してもbackend.phpという共通的なエントリーポイントを提供する事が可能になっている点です。これに関してのサンプルはまだ用意できていませんが、最初の方で紹介したイベントのうちの、Legacypage.Backend.Accessがこの様な更なる柔軟性を用意しています。現状ではこのイベントを受け取るのは、baseモジュール内のクラスで、LegacyControllerの初期化の中で、このイベントを受け取るクラスメソッドが定義されています。イベントを発行して、結果を収集してRSSを出力しているわけです。この標準メソッドは出力件数が決め打ちであるなど、柔軟性に乏しいものとなっています。いった場合には、Legacypage.Backend.Accessのイベントハンドラをまるごと取り替える事によって、もっと柔軟性のあるRSS出力処理をbackend.phpという入口を変えることなく実現させる事が出来ます。module.textsani​tizer.phpをいじること...。