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