Adjust the OrderAggregate to contain an OrderLine aggregate member. The
OrderLine is added as soon as a Product is added through the
AddProductCommand. The OrderLine member is capable of handling the
increment and decrement product count commands, to increase/decrease the
number of instances for that OrderLine. Decreasing the count below 1
will publish the ProductRemovedEvent from within the OrderLine.
Additional business validation is added to unsure a given Product isn't
added twice (adding a second should go through increment) and that the
products aren't adjusted as soon as the product is confirmed.
#BAEL-4767