Class ConnectionReconciliationTask
java.lang.Object
org.opendaylight.ovsdb.hwvtepsouthbound.reconciliation.ReconciliationTask
org.opendaylight.ovsdb.hwvtepsouthbound.reconciliation.connection.ConnectionReconciliationTask
- All Implemented Interfaces:
Runnable
Copied from org.opendaylight.ovsdb.southbound.reconciliation.connection.ConnectionReconciliationTask.
Created by Anil Vishnoi (avishnoi@Brocade.com) on 3/9/16.
-
Field Summary
Fields inherited from class org.opendaylight.ovsdb.hwvtepsouthbound.reconciliation.ReconciliationTask
configData, connectionManager, nodeIid, reconciliationManager
-
Constructor Summary
ConstructorDescriptionConnectionReconciliationTask
(ReconciliationManager reconciliationManager, HwvtepConnectionManager connectionManager, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<?> nodeIid, org.opendaylight.yangtools.yang.binding.DataObject configData) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Extended task should implement the logic that check the readiness of the task for execution.void
doRetry
(boolean wasLastAttemptSuccessful) Extended task should implement the logic that decides whether retry for the task is required or not.boolean
reconcileConfiguration
(HwvtepConnectionManager connectionManager) Method contains task reconciliation logic.long
Method returns the time interval for retrying the failed task.Methods inherited from class org.opendaylight.ovsdb.hwvtepsouthbound.reconciliation.ReconciliationTask
equals, hashCode, run, toString
-
Constructor Details
-
ConnectionReconciliationTask
public ConnectionReconciliationTask(ReconciliationManager reconciliationManager, HwvtepConnectionManager connectionManager, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<?> nodeIid, org.opendaylight.yangtools.yang.binding.DataObject configData)
-
-
Method Details
-
reconcileConfiguration
Description copied from class:ReconciliationTask
Method contains task reconciliation logic. Please refer toreconcileConfiguration(HwvtepConnectionManager)
for example.- Specified by:
reconcileConfiguration
in classReconciliationTask
- Parameters:
connectionManager
- Connection manager to get connection instance of the device- Returns:
- True if reconciliation was successful, else false
-
doRetry
public void doRetry(boolean wasLastAttemptSuccessful) Description copied from class:ReconciliationTask
Extended task should implement the logic that decides whether retry for the task is required or not. If retry is required but it does not requires any delay, submit the task immediately usingReconciliationManager.enqueue(ReconciliationTask)
. If retry requires delay, useReconciliationManager.enqueueForRetry(ReconciliationTask)
and specify the delay usingReconciliationTask.retryDelayInMills()
. If data store operation is required to decide if the task need retry, please implement it as an async operation and submit the task on the callback of the future.Note:Please do not write blocking data store operations
doRetry(boolean)
- Specified by:
doRetry
in classReconciliationTask
- Parameters:
wasLastAttemptSuccessful
- Status of the previous attempt
-
checkReadinessAndProcess
public void checkReadinessAndProcess()Description copied from class:ReconciliationTask
Extended task should implement the logic that check the readiness of the task for execution. If task is ready for the execution, submit it for immediate execution usingReconciliationManager.enqueue(ReconciliationTask)
. If task is not ready for execution yet, enqueue it again for delayed execution usingReconciliationManager.enqueueForRetry(ReconciliationTask)
. To check the readiness of the task, if the data store operation is required, please implement it as an async operation and submit the task on the callback of the future.Note:Please do not write blocking data store operations
doRetry(boolean)
- Specified by:
checkReadinessAndProcess
in classReconciliationTask
-
retryDelayInMills
public long retryDelayInMills()Description copied from class:ReconciliationTask
Method returns the time interval for retrying the failed task.ReconciliationTask.doRetry(boolean)
- Specified by:
retryDelayInMills
in classReconciliationTask
- Returns:
- time
-