release

abstract fun release(namespace: String, key: String)

Releases key in namespace, which this command's aggregate holds, once the events are appended: another aggregate may then reserve it. The release commits with the events: it is recorded with them and applied again after a crash, as a confirmation is; nothing is released when they are not appended, or by a decision that appends no event. A key the aggregate does not hold stays as it is.

Deleting an aggregate releases none of its keys, so a restored aggregate still holds them: its delete command releases the keys it should give up.


abstract fun release(namespace: String, key: String, tenancy: ReservationTenancy)

Releases key in namespace as release does, the key reserved with tenancy.