TrashServiceprovides methods related with the module trash mode (by default the mode is active and it can be turned off by the user).
Gets a number of instances moved to trash, for entity with given class name. This will only consider the instances, that have been moved to trash on the current entity schema version.
- className – fully qualified entity class name
trash instances count
Cleans the module trash. All instances in trash should be removed permanently and if they contain any historical data they should also be removed permanently.
This method should only be executed by the job created in the
- entitiesClassNames – the list of class names for which the trash should get cleared
getInstancesFromTrash(String entityName, QueryParams queryParams)¶
Returns the collection of instances from trash of a certain entity. Returned collection contains only instances that are on the current schema version.
- entityName – Instances of what entity should be looked for
- queryParams – Query parameters such as page number, size of page and sort direction. If null method will return all records in trash.
Collection of instances on the current schema version in trash
Checks if trash mode is active. This method should be used before executing the
moveToTrash(Object,Long)method to resolve whether the given instance should be moved to trash or removed permanently.
Returns: true if delete mode is equal to
org.motechproject.mds.config.DeleteMode.TRASH; false otherwise.
moveToTrash(Object instance, Long schemaVersion)¶
Moves the given instance to the trash. This method should only be executed, when the module trash mode is active.
- instance – an instance created from the given entity definition.
- schemaVersion – the current version of the schema for the entity
Sets the repeating schedule job that will be executed from time to time. Execution time depends on the value of time value and time unit (defined in
Before scheduling new job, the old one should be unscheduled to prevent the errors.