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.Integer
batchInterval
java.lang.Integer
batchSize
-
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 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)
void
close()
void
commitTeps()
void
configureTunnelMonitorInterval(int interval)
void
configureTunnelMonitorParams(boolean monitorEnabled, java.lang.String monitorProtocol)
void
configureTunnelType(java.lang.String transportZone, java.lang.String tunnelType)
void
createDefaultTransportZone(ItmConfig itmConfigObj)
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)
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)
org.opendaylight.mdsal.binding.api.DataBroker
getDataBroker()
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface
getInterface(java.lang.String tunnelName)
java.util.Optional<StateTunnelList>
getTunnelState(java.lang.String interfaceName)
void
handleOwnershipChange(org.opendaylight.mdsal.eos.binding.api.EntityOwnershipChange ownershipChange, org.opendaylight.mdsal.eos.binding.api.EntityOwnershipListenerRegistration listenerRegistration)
void
initialiseBatchingManager()
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)
void
showBridges(java.util.Map dpnIdBridgeRefsMap)
void
showCache(java.lang.String cacheName)
void
showState(java.util.Collection<StateTunnelList> tunnels)
java.util.List<java.lang.String>
showTeps()
void
start()
boolean
validateIP(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:
close
in interfacejava.lang.AutoCloseable
-
getDataBroker
public org.opendaylight.mdsal.binding.api.DataBroker getDataBroker()
- Specified by:
getDataBroker
in 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:
addExternalEndpoint
in 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:
remExternalEndpoint
in 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:
createLocalCache
in interfaceIITMProvider
-
commitTeps
public void commitTeps()
- Specified by:
commitTeps
in interfaceIITMProvider
-
showTeps
public java.util.List<java.lang.String> showTeps()
- Specified by:
showTeps
in interfaceIITMProvider
-
showState
public void showState(java.util.Collection<StateTunnelList> tunnels)
- Specified by:
showState
in interfaceIITMProvider
-
showBridges
public void showBridges(java.util.Map dpnIdBridgeRefsMap)
- Specified by:
showBridges
in interfaceIITMProvider
-
showCache
public void showCache(java.lang.String cacheName)
- Specified by:
showCache
in 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:
deleteVtep
in interfaceIITMProvider
-
configureTunnelType
public void configureTunnelType(java.lang.String transportZone, java.lang.String tunnelType)
- Specified by:
configureTunnelType
in interfaceIITMProvider
-
configureTunnelMonitorParams
public void configureTunnelMonitorParams(boolean monitorEnabled, java.lang.String monitorProtocol)
- Specified by:
configureTunnelMonitorParams
in interfaceIITMProvider
-
configureTunnelMonitorInterval
public void configureTunnelMonitorInterval(int interval)
- Specified by:
configureTunnelMonitorInterval
in interfaceIITMProvider
-
validateIP
public boolean validateIP(java.lang.String ip)
- Specified by:
validateIP
in 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:
getInterface
in interfaceIITMProvider
-
getTunnelState
public java.util.Optional<StateTunnelList> getTunnelState(java.lang.String interfaceName) throws org.opendaylight.mdsal.common.api.ReadFailedException
- Specified by:
getTunnelState
in 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)
-
-