日向夏特殊応援部隊

俺様向けメモ

Catalyst

探索パスにあるコンポーネントを読まないようにする

訂正 (2009-12-09T12:55:19+09:00) id:charsbar さんに教えて貰ったんですが依存してる Module::Pluggable::Object の except, only とかを使えば普通に出来た罠。 __PACKAGE__->config( setup_components => ['MyApp::Web::Model::Damepo',] ); とかで同様…

Catalyst + FastCGI + Apache (mod_fastcgi) の設定

すっごい久しぶりにやった件。 FastCgiExternalServer /home/zigorou/myapp/MyApp/script/myapp_fastcgi.pl -socket /tmp/myapp.socket <VirtualHost *:80> ServerName myapp.local DocumentRoot /home/zigorou/myapp/MyApp/root Alias /static /home/zigorou/myapp/MyApp/root</virtualhost>…

Catalyst::Controller::Resources でオーバーロード POST を使いたい

と id:ikasam_a にわがまま言ったら Catalyst::Request::REST::ForBrowsers ってのを教えて貰ったよ。オーバーロード POST って何だよって方は、 統一インターフェイスと PUT and DELETE tunneled POST パターン - masaki@catalyst - Catalystグループ ROA …

Catalyst Conference #1 まとめ

昨日は直前にエロギークな人のトラブルもありましたが、何とか無事に終える事が出来ました。 参加者の皆さん、お疲れ様でした。と言う訳でプレゼンのまとめと個人的な感想です。 プレゼン CatalystからModelを切り離せ (g:catalyst:id:dann) 資料 今回の基調…

CatalystCon1は明日です

詳しくはWiKiの方見て下さいです。 http://coderepos.org/share/wiki/CatalystCon1 皆さん資料は出来ましたでしょうか。僕はまだ作ってません><

Catalyst/DBICでDigest認証する

自分の為のメモですよ。 準備 まずはCatalystプロジェクトを作ります $ mkdir -p /path/to/dir $ cd /path/to/dir $ catalyst.pl AuthSample ユーザー用のDBICスキーマを定義します。 $ module-starter --module AuthSample::Schema $ cd AuthSample-Schema…

Catalyst Conference #1を開催します->締め切りました

詳しくはCodeReposのhttp://coderepos.org/share/wiki/CatalystCon1からどうぞ。 開催日はwikiにも書いてありますが4/22(火)になりました。会場は30人くらいまでしか入れないので、参加申し込み多数(!?)の場合は先着順と言う事でお願いします。ちなみに参加…

Catalyst::Controller::Atompubのdispatch、Slugヘッダとか

Atompubの勉強始めました。 Catalyst::Controller::Atompubについて こちらはid:teahut*1さん自身がPerl(Catalyst)でAtompubサーバーを作る解説記事を書かれていますので、そちらを見ると大体分かると思います。で今の所、分かった事とか困ってる事とか書い…

Catalystのデプロイに関するあれこれ

雑多なメモです。とりあえずCatalystにおけるデプロイってどーよって辺りからごニョゴニョしてた内容です。 Module::Install + Module::Install::Catalyst catalyst.plでgenerateされたMakefile.PLは、 use inc::Module::Install; name 'MyApp'; all_from 'l…

一時ファイルの作成とpackage別の一時ディレクトリ

CatalystではrequestデータのparseにHTML-Bodyを使っています。で良くご存じの通り、Uploadされたファイルに関しては、勝手にテンポラリファイルとしてテンポラリディレクトリに保存される次第です。このテンポラリなディレクトリはLinuxとかならば/tmpでい…

Catalystの拡張は$cだけじゃないYO!

はじめに 良くPluginを書くってなるとまず見るのが、これですかね。基本的には$cにメソッドを追加するってのが本来のやり方なんですけど、 別にそれを守らなきゃ行けないって訳じゃないです。 良いサンプル Catalyst-Plugin-Upload-MD5 Catalyst-Plugin-Uplo…

Catalyst-Plugin-FillInFormのfinalizeがうざい件

g:catalyst:id:ikasam_a:20061126:1164552341 http://blog.hide-k.net/archives/2006/11/catalystplugins.php ここでも述べられてますけど、finalizeで強制fillformの刑ってのは若干どうなんだろとか思う訳ですよ。ちなみにこれのせいでうちのチームのid:joj…

Catalyst-Helper-FastCGI-ExternalServerを微妙に修正

IRCでreportがあって、managerオプションが動作してないとのこと。 おっしゃる通りだったので大至急対応。 でもこうして使ってくれてる方が居るって嬉しいですね。

Catalyst-Model-MogileFS-Client

リリースしました。Catalyst-Model-MogileFS-Client大体基本的な使い方はhosts(trackers), domainを指定した名前づけされたMogileFS::Clientが使えるよって感じです。Modelだけじゃアレなので、Viewクラスも多分作ると思います。 path listを渡すと可能ならX…

Catalyst-Helper-FastCGI-ExternalServer

Catalyst-Helper-FastCGI-ExternalServer先日会社の同僚らと共に合作としてリリース。 っていうのも単独でfcgi立ち上げてって時にあると便利だなーってのと、 init script化したいってニーズが微妙にあったからだけですけど。0.03から/etc/sysconfig/myappみ…

Log::Log4perlの設定値に変数や関数も使える

はじめに d:id:ZIGOROu:20061105:1162736838の続き的な内容です。 Log::Log4perlのドキュメント Log::Log4perlの設定ファイルでの変数代入 Log::Log4perlの設定ファイルでPerlでhookを書く と思いっきり書いてあります。 Perlでのhookの制約 但し制約があり…

Catalyst::Plugin::ConfigLoaderでconfigの切り替えを行う

はじめに Catalyst::Plugin::ConfigLoaderを使うと異なる環境の為の設定を環境変数のみで制御出来ます。 下準備 ちょっと癖物なのが下記のように設定しなきゃいけないって事です。 package MyApp; use Catalyst qw/ConfigLoader/; __PACKAGE__->config( file…

Catalyst::Log::Log4perlの出力先を任意のファイルにする。

始めに Catalyst::Logを敢えてLog::Log4perlに変えるケースって良くあるとは思うんですが、デフォルトだとstderrへの書き込みのようなので、起動のさせ方に依っては嬉しくない記載になる可能性が高いです。*1と言う訳できちんと外部のファイルに明示的に出力…

Catalyst Source Code Walking #03

はじめに 前回のエントリはこちら。d:id:ZIGOROu:20061007:1160169000今回はComponentだけにフォーカスを当てます。 Componentとは何か 基本的にmyapp_create.plで作成するモジュールはComponentです。 ここで作られるComponentはCatalyst::Controller, Cata…

Catalyst::Plugin::BuildURI

と言う訳でd:id:zigorou:20061030:1162225100にあるuri_for_actionを使ったURI生成をplugin化してみました。多分今日のお昼くらいにはCPANで反映されてるんじゃないかと。 とりあえず先行公開してみます。Catalyst-Plugin-BuildURI ちなみに下記みたいな使い…

actionのuriを取得する

多分応用としてはtemplateに渡した時にuriの記述を抽象化出来るって事なんですけど、 Catalyst::Dispatcherにあるget_action(), get_action_by_path()メソッドを使うと、 namespace + action_name, pathなどでCatalyst::Actionまたはその派生クラスを取得す…

Catalyst::Plugin::Alarm

ちょっと面白いPluginを見つけました。 Catalyst::Plugin::Alarmなんですけど、Catalyst中でalarmにハンドラを付けれるみたいな。 Webアプリケーションのパフォーマンスチューニングとして仕込むのはありだなと思いました。 後はマッシュアップとして外部のW…

Catalyst Source Code Walking #02

d:id:ZIGOROu:20061006:1160166429からの続き とりあえず書き終えました。 Catalyst->import Catalyst->setup_home MyApp->config MyApp->setup MyApp->setup_home MyApp->setup_log MyApp->setup_plugins MyApp->setup_dispatcher MyApp->setup_engine MyAp…

Catalyst Source Code Walking #01

はじめに 遅ればせながらじっくりCatalystのsourceを読んでみようかと思ったので、 備忘録を兼ねてシリーズ化してみます。 ちなみにソースコードはCatalyst::Runtimeの5.7003を見てます。 まずbootstrapとなるscript(project_server.pl)から見れば当然、Cata…