Interface OptimizingTriggerCreator

All Known Implementing Classes:
OptimizingTriggerCreatorImpl

public interface OptimizingTriggerCreator
Adds recompute triggers to objects in an optimized way: - The triggers are set to a given time in future (e.g. 1 minute from now). - If more requests to create triggers to the same object come before that time comes (minus some safety margin, e.g. 2 seconds), their creation is skipped. Currently we deal only with the recompute triggers. Other types can be added as necessary. The deduplication works best if: - the requests are of the same kind (i.e. either name-based or OID-based); - the triggers are created on a single node, because the creators share a common state which is node-wide. But even if these conditions are not met, the extra triggers creation is still avoided, at the cost of extra read operations against the repository.