In CQ5, I need to collect some info from page properties and child nodes properties befor replication(delete) occurs
If i implement EventHandler:
@Component(immediate = true)
@Service
@Property(name = EventConstants.EVENT_TOPIC, value = ReplicationAction.EVENT_TOPIC)
public class RedisVideoUpdaterService implements EventHandler {
..................
public void handleEvent(Event event) {
ReplicationAction action = ReplicationAction.fromEvent(event);
ReplicationActionType actionType = action.getType();
if (actionType.equals(ReplicationActionType.DELETE)) {
//process data collecting
}
...............
After handelEvent
triggered there page is already deleted.
If i implement Preprocessor
@Component(immediate = true)
@Service
public class RedisVideoUpdaterService implements Preprocessor{
..................
public void preprocess(ReplicationAction action, ReplicationOptions replicationOptions) throws ReplicationException {
ReplicationActionType actionType = action.getType();
if (actionType.equals(ReplicationActionType.DELETE)) {
//process data collecting
}
...............
preprocess
method is not triggered at all on delete action.
Both cases are OK for actiovation/deactivation.
How can I process page before it have been deleted?
As I noticed. Preppocessor
triggered on delete only for activated pages. This behaviour is ok for me.