Class ContextChainHolderImpl
- java.lang.Object
 - 
- org.opendaylight.openflowplugin.impl.lifecycle.ContextChainHolderImpl
 
 
- 
- All Implemented Interfaces:
 AutoCloseable,org.opendaylight.mdsal.eos.binding.api.EntityOwnershipListener,org.opendaylight.mdsal.eos.common.api.GenericEntityOwnershipListener<org.opendaylight.yangtools.yang.binding.InstanceIdentifier<?>,org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange>,DeviceConnectedHandler,DeviceDisconnectedHandler,DeviceRemovedHandler,ContextChainHolder,ContextChainMastershipWatcher,MasterChecker
public class ContextChainHolderImpl extends Object implements ContextChainHolder, MasterChecker
 
- 
- 
Constructor Summary
Constructors Constructor Description ContextChainHolderImpl(ExecutorService executorService, org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider singletonServiceProvider, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipService entityOwnershipService, OwnershipChangeListener ownershipChangeListener, OpenflowProviderConfig config) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends OFPManager>
voidaddManager(T manager)Managers need to be added before.voidclose()ConnectionStatusdeviceConnected(ConnectionContext connectionContext)Method is used to propagate information about established connection with device.ContextChaingetContextChain(DeviceInfo deviceInfo)Return theContextChainfor a givenDeviceInfo.booleanisAnyDeviceMastered()Check if any device is mastered by controller.List<DeviceInfo>listOfMasteredDevices()Mastered devices.voidonDeviceDisconnected(ConnectionContext connectionContext)Method is used to propagate information about closed connection with device.voidonDeviceRemoved(DeviceInfo deviceInfo)Method is used to propagate information about device being removed from manager.voidonMasterRoleAcquired(@NonNull DeviceInfo deviceInfo, @NonNull ContextChainMastershipState mastershipState)Changed to MASTER role on device.voidonNotAbleToStartMastership(@NonNull DeviceInfo deviceInfo, @NonNull String reason, boolean mandatory)Event occurs if there was a try to acquire MASTER role.voidonSlaveRoleAcquired(DeviceInfo deviceInfo)Change to SLAVE role on device was successful.voidonSlaveRoleNotAcquired(DeviceInfo deviceInfo, String reason)Change to SLAVE role on device was not able.voidownershipChanged(org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange entityOwnershipChange)- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface org.opendaylight.openflowplugin.api.openflow.lifecycle.ContextChainMastershipWatcher
onNotAbleToStartMastershipMandatory 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
ContextChainHolderImpl
public ContextChainHolderImpl(ExecutorService executorService, org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider singletonServiceProvider, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipService entityOwnershipService, OwnershipChangeListener ownershipChangeListener, OpenflowProviderConfig config)
 
 - 
 
- 
Method Detail
- 
addManager
public <T extends OFPManager> void addManager(T manager)
Description copied from interface:ContextChainHolder- Specified by:
 addManagerin interfaceContextChainHolder- Type Parameters:
 T-OFPManager- Parameters:
 manager- a child class ofOFPManager
 
- 
deviceConnected
public ConnectionStatus deviceConnected(ConnectionContext connectionContext)
Description copied from interface:DeviceConnectedHandlerMethod is used to propagate information about established connection with device. It propagates connected device's connection context.- Specified by:
 deviceConnectedin interfaceDeviceConnectedHandler
 
- 
onNotAbleToStartMastership
public void onNotAbleToStartMastership(@NonNull DeviceInfo deviceInfo, @NonNull String reason, boolean mandatory)
Description copied from interface:ContextChainMastershipWatcherEvent occurs if there was a try to acquire MASTER role. But it was not possible to start this MASTER role on device.- Specified by:
 onNotAbleToStartMastershipin interfaceContextChainMastershipWatcher- Parameters:
 deviceInfo- connected switch identificationreason- reasonmandatory- if it is mandatory connection will be dropped
 
- 
onMasterRoleAcquired
public void onMasterRoleAcquired(@NonNull DeviceInfo deviceInfo, @NonNull ContextChainMastershipState mastershipState)
Description copied from interface:ContextChainMastershipWatcherChanged to MASTER role on device.- Specified by:
 onMasterRoleAcquiredin interfaceContextChainMastershipWatcher- Parameters:
 deviceInfo- connected switch identificationmastershipState- state
 
- 
onSlaveRoleAcquired
public void onSlaveRoleAcquired(DeviceInfo deviceInfo)
Description copied from interface:ContextChainMastershipWatcherChange to SLAVE role on device was successful.- Specified by:
 onSlaveRoleAcquiredin interfaceContextChainMastershipWatcher- Parameters:
 deviceInfo- connected switch identification
 
- 
onSlaveRoleNotAcquired
public void onSlaveRoleNotAcquired(DeviceInfo deviceInfo, String reason)
Description copied from interface:ContextChainMastershipWatcherChange to SLAVE role on device was not able.- Specified by:
 onSlaveRoleNotAcquiredin interfaceContextChainMastershipWatcher- Parameters:
 deviceInfo- connected switch identificationreason- reason
 
- 
onDeviceDisconnected
public void onDeviceDisconnected(ConnectionContext connectionContext)
Description copied from interface:DeviceDisconnectedHandlerMethod is used to propagate information about closed connection with device. It propagates connected device's connection context.- Specified by:
 onDeviceDisconnectedin interfaceDeviceDisconnectedHandler
 
- 
getContextChain
public ContextChain getContextChain(DeviceInfo deviceInfo)
Description copied from interface:ContextChainHolderReturn theContextChainfor a givenDeviceInfo.- Specified by:
 getContextChainin interfaceContextChainHolder- Returns:
 ContextChain
 
- 
close
public void close()
- Specified by:
 closein interfaceAutoCloseable- Specified by:
 closein interfaceContextChainHolder
 
- 
ownershipChanged
public void ownershipChanged(org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange entityOwnershipChange)
- Specified by:
 ownershipChangedin interfaceorg.opendaylight.mdsal.eos.binding.api.EntityOwnershipListener- Specified by:
 ownershipChangedin interfaceorg.opendaylight.mdsal.eos.common.api.GenericEntityOwnershipListener<org.opendaylight.yangtools.yang.binding.InstanceIdentifier<?>,org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange>
 
- 
listOfMasteredDevices
public List<DeviceInfo> listOfMasteredDevices()
Description copied from interface:MasterCheckerMastered devices.- Specified by:
 listOfMasteredDevicesin interfaceMasterChecker- Returns:
 - list of mastered devices
 
 
- 
isAnyDeviceMastered
public boolean isAnyDeviceMastered()
Description copied from interface:MasterCheckerCheck if any device is mastered by controller.- Specified by:
 isAnyDeviceMasteredin interfaceMasterChecker- Returns:
 - true if there is at least one device mastered by controller
 
 
- 
onDeviceRemoved
public void onDeviceRemoved(DeviceInfo deviceInfo)
Description copied from interface:DeviceRemovedHandlerMethod is used to propagate information about device being removed from manager.- Specified by:
 onDeviceRemovedin interfaceDeviceRemovedHandler
 
 - 
 
 -