Explain in the Command Model chapter how an Aggregate can be ended/closed/deleted.
Description in code about the AggregateLifecycle in code is:
/**
* Marks this aggregate as deleted, instructing a repository to remove that aggregate at an appropriate time.
* <p/>
* Note that different repository implementations may react differently to aggregates marked for deletion.
* Typically, Event Sourced Repositories will ignore the marking and expect deletion to be provided as part of Event
* information.
*/
public static void markDeleted() {
getInstance().doMarkDeleted();
}