Class AbstractPushMonitor

java.lang.Object
com.linkedin.venice.pushmonitor.AbstractPushMonitor
All Implemented Interfaces:
RoutingDataRepository.RoutingDataChangedListener, PartitionStatusListener, PushMonitor
Direct Known Subclasses:
PartitionStatusBasedPushMonitor

public abstract class AbstractPushMonitor extends Object implements PushMonitor, PartitionStatusListener, RoutingDataRepository.RoutingDataChangedListener
AbstractPushMonitor is a high level abstraction that manages OfflinePushStatus. Depending on the implementation, it collects info from different paths and updates push status accordingly. At present, push status has 1 initial state ExecutionStatus.STARTED and 2 end states ExecutionStatus.COMPLETED and ExecutionStatus.ERROR. State mutation is unidirectional and once it reaches to either end state, we stop mutating it. Check OfflinePushStatus for more details.