Java Reference
In-Depth Information
OrderRepository orderRepository;
B
Creates an
Acknowledge
OrderServiceImpl
OrderAttachmentManager attachmentManager;
public void DetachingAcknowledgeOrderServiceImpl(
OrderRepository orderRepository,
OrderAttachmentManager attachmentManager) {
this.orderRepository = orderRepository;
this.attachmentManager = attachmentManager;
}
public AcknowledgeOrderResult getOrderToAcknowledge(
String orderId) {
Order order = orderRepository.findOrder(orderId);
Order detachedOrder =
attachmentManager.detach(order);
if (order.isAcknowledgable()) {
return new AcknowledgeOrderResult(
AcknowledgeOrderResult.OK, detachedOrder);
} else
return new AcknowledgeOrderResult(
AcknowledgeOrderResult.ILLEGAL_STATE,
detachedOrder);
}
C
Detaches
order
public AcknowledgeOrderResult acknowledgeOrder(
Order detachedOrder) {
Order order = attachmentManager.
bbbbbbbbbbbbb
bb
➥
attach(detachedOrder);
return new AcknowledgeOrderResult(
AcknowledgeOrderResult.OK, detachedOrder);
}
D
Attaches
order
}
Let's take a closer look:
B
AcknowledgeOrderServiceImpl
defines a constructor that takes an
OrderReposi-
tory
and an
OrderAttachmentManager
as parameters, which enables it to be initial-
ized via dependency injection.
The
getOrderToAcknowledge()
method calls the
OrderRepository
to retrieve the
order. It then detaches the
Order
. It returns an
AcknowledgeOrderResult
contain-
ing the detached order and status code indicating whether the order can be
acknowledged.
The
acknowledgeOrder()
method attaches the updated detached
Order
and
returns an
AcknowledgeOrderResult
.
C
D
Search WWH ::
Custom Search