ホーム :サンプル説明 :


example.org.seasar.buri.test.BuriTest

前へ 次へ

これは主にInnerInvoker、preprocess、Activityのループ処理を実現しているテストです。

想定は通販サイトの注文を受け付けた後の流れ

顧客が注文します。
注文は即出荷作業へ移り ※出荷作業中
出荷商品がすべて準備完了したとき請求処理に入ります。 ※出荷終了
この時点で顧客は注文の取り消しが出来なくなります。
請求処理をした後、入金確認した地点で注文は終了になります。※終了
顧客はいつでも注文の状態を知ることが出来ます。


フロー(order.xpdl)上での設計は・・・

注文フローから出荷を依頼します
出荷フローでは注文情報を受け取り、一旦出荷伝票を起こして商品をそろえる出荷詳細へ準備を依頼します。
出荷詳細フローでは出荷の詳細情報を個別に受け取り、商品が準備できたときに出荷フローへ通知します。
商品が準備できた出荷フローではすべての商品の出荷準備が出来たかどうかを確認して全部が揃っていない場合は再度商品待ちをします。
もし、商品が全部揃えば出荷準備が完了として即出荷します。
出荷と同時に注文フローへ出荷状態の変更を、請求フローへ請求依頼を出します。
請求依頼を受けた請求フローは入金確認が終わったとき、注文フローへ状態の変更依頼を出します。


ポイント!!
InnerInvokerを使った時のやりとりの時にフローの独立性を高めるためにpreprocessでデータ型の変換をしています。
商品の準備を待つ部分ではActivityのループ処理をして商品待ちを実現しています。


サンプル説明 に戻る