ドメイン駆動開発道

ドメイン駆動開発を実践できず、悶々とする毎日を送るおやじSEのブログです。

ドメインモデルの実装(1)

最初にメソッドupdateDeliveryInfo()を実装します。
その後、updateDeliveryInfo()の中で呼ばれるPendingOrderのメソッドを実装します。
また、必要とされるリポジトリも識別し実装します。

まずは、サービスのメソッドを実装。

public interface PlaceOrderService {
  PlaceOrderServiceResult updateDeliveryInfo(String pendingOrderId, 
                                             Address deliveryAddress, 
                                             Date deliveryTime);
}

引数はPendingOrderId、deliveryAddress、deliveryTimeの3つ。
PendingOrderIdはDB上のPendingOrderの主キー。HttpSessionやブラウザのプレゼン層で保持される
deliveryAddressとdeliveryTimeは、ユーザによって入力されるデリバリ情報を示す。