Class CronResourceSynchronizer<R extends CronResource<R,N>,N extends CronResourceNode<R,N>>

java.lang.Object
com.aoapps.appcluster.ResourceSynchronizer<R,N>
com.aoapps.appcluster.CronResourceSynchronizer<R,N>

public abstract class CronResourceSynchronizer<R extends CronResource<R,N>,N extends CronResourceNode<R,N>> extends ResourceSynchronizer<R,N>

Synchronizes resource based on cron-like schedules. If the local node is stopped, the synchronizer is stopped. If the locale node or the remote node is disabled, the synchronized is disabled. Otherwise, the synchronizer will operate on a cron-like scheduled basis for testing and synchronizing.

To support masters synchronizing while slaves only test, if a test and a synchronization are scheduled at the same moment, the synchronization is performed if possible, and the test is only performed if the synchronization is not possible. Thus, a synchronization also counts as a test and should perform at least as thorough of a check as a test would perform.

If a synchronization or test is missed, no catch-up is performed. This is true for both when the node is down or when a previous test/synchronization took too long, overlapping the current schedule.

Author:
AO Industries, Inc.