home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

日記/2007/07/29/Xhwlayメモ

日記/2007/07/29/Xhwlayメモ

日記 / 2007 / 07 / 29 / Xhwlayメモ
id: 68 所有者: msakamoto-sf    作成日: 2007-07-29 00:11:26
カテゴリ: Xhwlay 

Partial Bookmark 機能、見送り・・・。

現状のConfigのneedsBookmark()のIFはこうなっている。

function needsBookmark($page = null, $aci = "*")

で、$pageが省略された場合はStory全体のBookmark ON/OFFを取得し、$pageが指定された場合はページ単位のBookmark ON/OFFを取得できるようになっている。

が。実際のそのテストケースを作ろうとして。

・・・これ、要らなくね?

現実問題として、一つのStoryの中にBookmark ON/OFFが混ざることはあり得るのか?例えXhwlay側でサポートするとしても、本当にそんなStoryを作る場面があるのか?当初予定としては、例えばヘルプ画面ポップアップのようなものを想定していたが、それにしたってBookmarkOFFのヘルプ画面専用のstoryを作るのが普通じゃないか?

何よりも、BookmarkON/OFFの混ざったStoryって、激しくメンテナンス性が悪くないか?絶対に、あとあとFlowが追えなくなる。

というわけで、Xhwlay_Runnerレベルではもう、ページ単位のBookmark ON/OFFはサポートしない。どうしてもやりたければ、Xhwaly_Runnerをextendsして、コアを好きなように書き換えて下さい。という感じ。
まあ、Config側のIFは変更しない。Configの機能としては、純粋にまあ、あっても良いかなという感じなので。

そんなところ。

Xhwlay_Runner_Test、とりあえず終了。

そしてようやく、な感じ。PartialBookmarkの見送りに助けられた。

小さな変更点として、Page/Event/Barrier/Guardの各種callbackを取得する為の _getCallback($params) 内で、

define('XHWLAY_RUNNER_HOOK_CLASSLOAD', "xhwlay_runner_classload");

で定義されるHOOKを呼ぶよう、修正した。Testには盛りこみ済。

一応現状は、デフォルトの _getCallback()は

"user_function" > "class" & "method"

の優先度でcallbackの有効性を判断している。classloadのHookを仕込むことにより、これらのパラメータに応じて動的にファイルをrequireできるようになる。

まあ、PokoXにあった

$POKOX_MODULE_AUTOLOAD_PATH

を好き勝手に実装してもらう為のマージン。
最近はPEAR形式のクラス名やディレクトリ構造を取ったりもするので、環境によって変わるだろうし・・・。

さて、これでベースコアは一応まとまった。普通のsessionベースでのサンプルと、ログイン/ログアウト込みのサンプルの準備に取りかかろう。
sessionを使わないのは・・・まあ、一応準備するか・・・。多分、あり得ないんだけど。だってBCID(Bookmark Container ID)自身がsessionIDになってしまうから。そうなると。・・・まあ、それはそれで無理矢理Cookie経由でやりとりさせて・・・って、それじゃsessionを使ってるのと変わらないし。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2008-12-23 00:13:37
md5:e0e2042964372e1bc393a6a1abe34502
sha1:6ccb1ac1f87caefe02eff1daf628f231aaa91e84
コメント
コメントを投稿するにはログインして下さい。