Package org.opendaylight.genius.itm.impl
Class ItmProvider
- java.lang.Object
-
- org.opendaylight.genius.itm.impl.ItmProvider
-
- All Implemented Interfaces:
java.lang.AutoCloseable,IITMProvider
@Singleton public class ItmProvider extends java.lang.Object implements java.lang.AutoCloseable, IITMProvider
-
-
Field Summary
Fields Modifier and Type Field Description java.lang.IntegerbatchIntervaljava.lang.IntegerbatchSize
-
Constructor Summary
Constructors Constructor Description ItmProvider(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, IdManagerService idManagerService, InterfaceStateListener interfaceStateListener, ItmManagerRpcService itmManagerRpcService, ItmTunnelEventListener itmTunnelEventListener, TepCommandHelper tepCommandHelper, TunnelMonitorChangeListener tunnelMonitorChangeListener, TunnelMonitorIntervalListener tunnelMonitorIntervalListener, TransportZoneListener transportZoneListener, OvsdbNodeListener ovsdbNodeListener, TunnelMonitoringConfig tunnelMonitoringConfig, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipService entityOwnershipService, DpnTepStateCache dpnTepStateCache, ItmDiagStatusProvider itmDiagStatusProvider, TunnelStateCache tunnelStateCache, ItmConfig itmConfig, org.opendaylight.infrautils.jobcoordinator.JobCoordinator jobCoordinator, EosChangeEventHandler eosChangeEventHandler)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExternalEndpoint(java.lang.Class<? extends TunnelTypeBase> tunnelType, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress dcgwIP)voidclose()voidcommitTeps()voidconfigureTunnelMonitorInterval(int interval)voidconfigureTunnelMonitorParams(boolean monitorEnabled, java.lang.String monitorProtocol)voidconfigureTunnelType(java.lang.String transportZone, java.lang.String tunnelType)voidcreateDefaultTransportZone(ItmConfig itmConfigObj)voidcreateLocalCache(org.opendaylight.yangtools.yang.common.Uint64 dpnId, java.lang.String portName, java.lang.Integer vlanId, java.lang.String ipAddress, java.lang.String subnetMask, java.lang.String gatewayIp, java.lang.String transportZone)voiddeleteVtep(org.opendaylight.yangtools.yang.common.Uint64 dpnId, java.lang.String portName, java.lang.Integer vlanId, java.lang.String ipAddress, java.lang.String subnetMask, java.lang.String gatewayIp, java.lang.String transportZone)org.opendaylight.mdsal.binding.api.DataBrokergetDataBroker()org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.InterfacegetInterface(java.lang.String tunnelName)java.util.Optional<StateTunnelList>getTunnelState(java.lang.String interfaceName)voidhandleOwnershipChange(org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange ownershipChange, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipListenerRegistration listenerRegistration)voidinitialiseBatchingManager()voidremExternalEndpoint(java.lang.Class<? extends TunnelTypeBase> tunnelType, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress dcgwIP)voidshowBridges(java.util.Map dpnIdBridgeRefsMap)voidshowCache(java.lang.String cacheName)voidshowState(java.util.Collection<StateTunnelList> tunnels)java.util.List<java.lang.String>showTeps()voidstart()booleanvalidateIP(java.lang.String ip)
-
-
-
Constructor Detail
-
ItmProvider
@Inject public ItmProvider(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, IdManagerService idManagerService, InterfaceStateListener interfaceStateListener, ItmManagerRpcService itmManagerRpcService, ItmTunnelEventListener itmTunnelEventListener, TepCommandHelper tepCommandHelper, TunnelMonitorChangeListener tunnelMonitorChangeListener, TunnelMonitorIntervalListener tunnelMonitorIntervalListener, TransportZoneListener transportZoneListener, OvsdbNodeListener ovsdbNodeListener, TunnelMonitoringConfig tunnelMonitoringConfig, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipService entityOwnershipService, DpnTepStateCache dpnTepStateCache, ItmDiagStatusProvider itmDiagStatusProvider, TunnelStateCache tunnelStateCache, ItmConfig itmConfig, org.opendaylight.infrautils.jobcoordinator.JobCoordinator jobCoordinator, EosChangeEventHandler eosChangeEventHandler)
-
-
Method Detail
-
start
@PostConstruct public void start()
-
initialiseBatchingManager
public void initialiseBatchingManager()
-
createDefaultTransportZone
public void createDefaultTransportZone(ItmConfig itmConfigObj)
-
close
@PreDestroy public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable
-
getDataBroker
public org.opendaylight.mdsal.binding.api.DataBroker getDataBroker()
- Specified by:
getDataBrokerin interfaceIITMProvider
-
addExternalEndpoint
public void addExternalEndpoint(java.lang.Class<? extends TunnelTypeBase> tunnelType, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress dcgwIP)
- Specified by:
addExternalEndpointin interfaceIITMProvider
-
remExternalEndpoint
public void remExternalEndpoint(java.lang.Class<? extends TunnelTypeBase> tunnelType, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress dcgwIP)
- Specified by:
remExternalEndpointin interfaceIITMProvider
-
createLocalCache
public void createLocalCache(org.opendaylight.yangtools.yang.common.Uint64 dpnId, java.lang.String portName, java.lang.Integer vlanId, java.lang.String ipAddress, java.lang.String subnetMask, java.lang.String gatewayIp, java.lang.String transportZone)- Specified by:
createLocalCachein interfaceIITMProvider
-
commitTeps
public void commitTeps()
- Specified by:
commitTepsin interfaceIITMProvider
-
showTeps
public java.util.List<java.lang.String> showTeps()
- Specified by:
showTepsin interfaceIITMProvider
-
showState
public void showState(java.util.Collection<StateTunnelList> tunnels)
- Specified by:
showStatein interfaceIITMProvider
-
showBridges
public void showBridges(java.util.Map dpnIdBridgeRefsMap)
- Specified by:
showBridgesin interfaceIITMProvider
-
showCache
public void showCache(java.lang.String cacheName)
- Specified by:
showCachein interfaceIITMProvider
-
deleteVtep
public void deleteVtep(org.opendaylight.yangtools.yang.common.Uint64 dpnId, java.lang.String portName, java.lang.Integer vlanId, java.lang.String ipAddress, java.lang.String subnetMask, java.lang.String gatewayIp, java.lang.String transportZone)- Specified by:
deleteVtepin interfaceIITMProvider
-
configureTunnelType
public void configureTunnelType(java.lang.String transportZone, java.lang.String tunnelType)- Specified by:
configureTunnelTypein interfaceIITMProvider
-
configureTunnelMonitorParams
public void configureTunnelMonitorParams(boolean monitorEnabled, java.lang.String monitorProtocol)- Specified by:
configureTunnelMonitorParamsin interfaceIITMProvider
-
configureTunnelMonitorInterval
public void configureTunnelMonitorInterval(int interval)
- Specified by:
configureTunnelMonitorIntervalin interfaceIITMProvider
-
validateIP
public boolean validateIP(java.lang.String ip)
- Specified by:
validateIPin interfaceIITMProvider
-
getInterface
public org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface getInterface(java.lang.String tunnelName)
- Specified by:
getInterfacein interfaceIITMProvider
-
getTunnelState
public java.util.Optional<StateTunnelList> getTunnelState(java.lang.String interfaceName) throws org.opendaylight.mdsal.common.api.ReadFailedException
- Specified by:
getTunnelStatein interfaceIITMProvider- Throws:
org.opendaylight.mdsal.common.api.ReadFailedException
-
handleOwnershipChange
public void handleOwnershipChange(org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange ownershipChange, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipListenerRegistration listenerRegistration)
-
-