【PHPフレームワーク】Ethna【スケルトン自動作成】at PHP
【PHPフレームワーク】Ethna【スケルトン自動作成】 - 暇つぶし2ch605:nobodyさん
06/10/28 17:56:31 FIh0kQ4t
ちょっと行き詰ったので、お知恵を拝借させてください。
複数のAppManagerでの処理にまたがるトランザクションの方法について
悩んでいます。

たとえばポイント制の物販(?)のようなものがあるとして、顧客情報と
購入情報のAppManagerを用意しました。購入処理を行った場合、顧客
情報からはポイント減算処理、購入情報には履歴を書き込みます。
単位の処理だと、
$user_m->userPoint( 30 ); // 30ptを消費
$sales_m->addHistory( ... ); // 購入履歴を追加
のように実装できますが、これらは同じトランザクション内で処理される
必要があります。

一方のManagerから他方のManagerを呼び出して処理をまとめてしまうことも
可能ですが、Managerの独立性が保たれないのでそれは気持ち悪いです。
これらのManagerを管理する別のManagerを作成して、そこでトランザクションを
制御するというのも考えましたが、機能ごとに分離すると数ばかり多くなって
収拾がつかなくなってしまいました。(かといって統合すると用途がごちゃごちゃの
Managerができてしまう罠…)

続きます↓


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch