Currently to put a document in the trash, we change its lifecycle state to deleted. This has several unfortunate consequences:
- the lifecycles have to have a 'deleted' state
- the lifecycles have to be designed with appropriate transitions to the 'deleted' state
- putting a document in the trash loses its previous lifecycle information, so we have to guess a lifecycle state if the document is restored (removed from the trash).
To avoid this, we should use a specific boolean system property ecm:isTrashed instead of the lifecycle state to denote trashed documents.
This task also includes changes to:
- expose this boolean to Elasticsearch indexing and JSON exports,
- update code that checks or changes the lifecycle state deleted to use the boolean instead.