Catalyst::Model::XML::Feedがおもしろい

結構面白げなCatalyst向けモジュールであるCatalyst::Model::XML::Feedを使ってみた。というか、今回の課題のメインの機能はこれつかってる。

その名の通り、CatalystのModelとしてRSS/Atomフィードを使えるようにするモジュール。適当に、

$ ./script/myapp_create.pl model Feeds

とかして、空っぽのモデルを作った後、作ったモジュールで、

use base 'Catalyst::Model::XML::Feed';

で終了。あとは適当なControllerで、

$c->model('Feeds')->register($uri);
my @feeds = $c->model('Feeds')->get_all_feeds;

とすると、XML::Feedオブジェクトのリストが帰ってくる。あとは煮るなり焼くなり。

CatalystのModelにはXMLRPCむけのものとかあったりして何かと楽しげだなー。