Package org.opendaylight.genius.itm.rpc
Class ItmManagerRpcService
- java.lang.Object
-
- org.opendaylight.genius.itm.rpc.ItmManagerRpcService
-
- All Implemented Interfaces:
ItmRpcService,org.opendaylight.yangtools.yang.binding.RpcService
@Singleton public class ItmManagerRpcService extends java.lang.Object implements ItmRpcService
-
-
Constructor Summary
Constructors Constructor Description ItmManagerRpcService(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, IMdsalApiManager mdsalManager, ItmConfig itmConfig, DPNTEPsInfoCache dpnTEPsInfoCache, IInterfaceManager interfaceManager, DpnTepStateCache dpnTepStateCache, TunnelStateCache tunnelStateCache, InterfaceManagerService interfaceManagerService, OvsBridgeRefEntryCache ovsBridgeRefEntryCache, DirectTunnelUtils directTunnelUtils)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddExternalTunnelEndpointOutput>>addExternalTunnelEndpoint(AddExternalTunnelEndpointInput input)used for building tunnels between teps on all Dpns and external nodecom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddL2GwDeviceOutput>>addL2GwDevice(AddL2GwDeviceInput input)used for building tunnels between teps on all Dpns and hwVtepcom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddL2GwMlagDeviceOutput>>addL2GwMlagDevice(AddL2GwMlagDeviceInput input)used for building tunnels between teps on all Dpns and hwVtepcom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<BuildExternalTunnelFromDpnsOutput>>buildExternalTunnelFromDpns(BuildExternalTunnelFromDpnsInput input)used for building tunnels between a Dpn and external nodevoidclose()com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<CreateTerminatingServiceActionsOutput>>createTerminatingServiceActions(CreateTerminatingServiceActionsInput input)used for programming the terminating service actionscom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL2GwDeviceOutput>>deleteL2GwDevice(DeleteL2GwDeviceInput input)used for deleting tunnels between teps on all Dpns and hwVtepcom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL2GwMlagDeviceOutput>>deleteL2GwMlagDevice(DeleteL2GwMlagDeviceInput input)used for deleting tunnels between teps on all Dpns and hwVtepstatic java.util.List<DcGatewayIp>getDcGatewayIpList(TypedReadWriteTransaction<Datastore.Configuration> tx)com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnEndpointIpsOutput>>getDpnEndpointIps(GetDpnEndpointIpsInput input)used to retrieve tunnel end point IPs of a Dpncom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnInfoOutput>>getDpnInfo(GetDpnInfoInput input)Gets the dpn id and tep ip information of compute nodescom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetEgressActionsForTunnelOutput>>getEgressActionsForTunnel(GetEgressActionsForTunnelInput input)used to retrieve group actions to use from interface namecom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetExternalTunnelInterfaceNameOutput>>getExternalTunnelInterfaceName(GetExternalTunnelInterfaceNameInput input)used to retrieve external tunnel interface id between Dpns/TORscom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetInternalOrExternalInterfaceNameOutput>>getInternalOrExternalInterfaceName(GetInternalOrExternalInterfaceNameInput input)used to retrieve tunnel interface id with src Dpn and destination ip/dpncom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetTunnelInterfaceNameOutput>>getTunnelInterfaceName(GetTunnelInterfaceNameInput input)used to retrieve tunnel interface id between Dpnsjava.util.List<MatchInfo>getTunnelMatchesForServiceId(org.opendaylight.yangtools.yang.common.Uint16 serviceId)com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetTunnelTypeOutput>>getTunnelType(GetTunnelTypeInput input)to get the type of the tunnel interface(vxlan, vxlan-gpe, gre, etc.)com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetWatchPortForTunnelOutput>>getWatchPortForTunnel(GetWatchPortForTunnelInput input)retrieve the watch port for the BFD enabled point to point tunnelcom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<IsDcgwPresentOutput>>isDcgwPresent(IsDcgwPresentInput input)Used for determining whether tunnel is an internal or an external tunnelcom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<IsTunnelInternalOrExternalOutput>>isTunnelInternalOrExternal(IsTunnelInternalOrExternalInput input)Used for determining whether tunnel is an internal or an external tunnelcom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveExternalTunnelEndpointOutput>>removeExternalTunnelEndpoint(RemoveExternalTunnelEndpointInput input)used for building tunnels between teps on all Dpns and external nodecom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveExternalTunnelFromDpnsOutput>>removeExternalTunnelFromDpns(RemoveExternalTunnelFromDpnsInput input)used for building tunnels between a Dpn and external nodecom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveTerminatingServiceActionsOutput>>removeTerminatingServiceActions(RemoveTerminatingServiceActionsInput input)used for removing the terminating service actionscom.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<SetBfdParamOnTunnelOutput>>setBfdParamOnTunnel(SetBfdParamOnTunnelInput input)used for turning ON/OFF to monitor individual tunnelsvoidstart()
-
-
-
Constructor Detail
-
ItmManagerRpcService
@Inject public ItmManagerRpcService(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, IMdsalApiManager mdsalManager, ItmConfig itmConfig, DPNTEPsInfoCache dpnTEPsInfoCache, IInterfaceManager interfaceManager, DpnTepStateCache dpnTepStateCache, TunnelStateCache tunnelStateCache, InterfaceManagerService interfaceManagerService, OvsBridgeRefEntryCache ovsBridgeRefEntryCache, DirectTunnelUtils directTunnelUtils)
-
-
Method Detail
-
start
@PostConstruct public void start()
-
close
@PreDestroy public void close()
-
getTunnelInterfaceName
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetTunnelInterfaceNameOutput>> getTunnelInterfaceName(GetTunnelInterfaceNameInput input)
Description copied from interface:ItmRpcServiceused to retrieve tunnel interface id between Dpns- Specified by:
getTunnelInterfaceNamein interfaceItmRpcService
-
getEgressActionsForTunnel
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetEgressActionsForTunnelOutput>> getEgressActionsForTunnel(GetEgressActionsForTunnelInput input)
Description copied from interface:ItmRpcServiceused to retrieve group actions to use from interface name- Specified by:
getEgressActionsForTunnelin interfaceItmRpcService
-
getTunnelType
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetTunnelTypeOutput>> getTunnelType(GetTunnelTypeInput input)
Description copied from interface:ItmRpcServiceto get the type of the tunnel interface(vxlan, vxlan-gpe, gre, etc.)- Specified by:
getTunnelTypein interfaceItmRpcService
-
setBfdParamOnTunnel
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<SetBfdParamOnTunnelOutput>> setBfdParamOnTunnel(SetBfdParamOnTunnelInput input)
Description copied from interface:ItmRpcServiceused for turning ON/OFF to monitor individual tunnels- Specified by:
setBfdParamOnTunnelin interfaceItmRpcService
-
removeExternalTunnelEndpoint
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveExternalTunnelEndpointOutput>> removeExternalTunnelEndpoint(RemoveExternalTunnelEndpointInput input)
Description copied from interface:ItmRpcServiceused for building tunnels between teps on all Dpns and external node- Specified by:
removeExternalTunnelEndpointin interfaceItmRpcService
-
removeExternalTunnelFromDpns
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveExternalTunnelFromDpnsOutput>> removeExternalTunnelFromDpns(RemoveExternalTunnelFromDpnsInput input)
Description copied from interface:ItmRpcServiceused for building tunnels between a Dpn and external node- Specified by:
removeExternalTunnelFromDpnsin interfaceItmRpcService
-
buildExternalTunnelFromDpns
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<BuildExternalTunnelFromDpnsOutput>> buildExternalTunnelFromDpns(BuildExternalTunnelFromDpnsInput input)
Description copied from interface:ItmRpcServiceused for building tunnels between a Dpn and external node- Specified by:
buildExternalTunnelFromDpnsin interfaceItmRpcService
-
addExternalTunnelEndpoint
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddExternalTunnelEndpointOutput>> addExternalTunnelEndpoint(AddExternalTunnelEndpointInput input)
Description copied from interface:ItmRpcServiceused for building tunnels between teps on all Dpns and external node- Specified by:
addExternalTunnelEndpointin interfaceItmRpcService
-
getExternalTunnelInterfaceName
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetExternalTunnelInterfaceNameOutput>> getExternalTunnelInterfaceName(GetExternalTunnelInterfaceNameInput input)
Description copied from interface:ItmRpcServiceused to retrieve external tunnel interface id between Dpns/TORs- Specified by:
getExternalTunnelInterfaceNamein interfaceItmRpcService
-
createTerminatingServiceActions
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<CreateTerminatingServiceActionsOutput>> createTerminatingServiceActions(CreateTerminatingServiceActionsInput input)
Description copied from interface:ItmRpcServiceused for programming the terminating service actions- Specified by:
createTerminatingServiceActionsin interfaceItmRpcService
-
removeTerminatingServiceActions
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveTerminatingServiceActionsOutput>> removeTerminatingServiceActions(RemoveTerminatingServiceActionsInput input)
Description copied from interface:ItmRpcServiceused for removing the terminating service actions- Specified by:
removeTerminatingServiceActionsin interfaceItmRpcService
-
getTunnelMatchesForServiceId
public java.util.List<MatchInfo> getTunnelMatchesForServiceId(org.opendaylight.yangtools.yang.common.Uint16 serviceId)
-
getInternalOrExternalInterfaceName
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetInternalOrExternalInterfaceNameOutput>> getInternalOrExternalInterfaceName(GetInternalOrExternalInterfaceNameInput input)
Description copied from interface:ItmRpcServiceused to retrieve tunnel interface id with src Dpn and destination ip/dpn- Specified by:
getInternalOrExternalInterfaceNamein interfaceItmRpcService
-
deleteL2GwDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL2GwDeviceOutput>> deleteL2GwDevice(DeleteL2GwDeviceInput input)
Description copied from interface:ItmRpcServiceused for deleting tunnels between teps on all Dpns and hwVtep- Specified by:
deleteL2GwDevicein interfaceItmRpcService
-
addL2GwDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddL2GwDeviceOutput>> addL2GwDevice(AddL2GwDeviceInput input)
Description copied from interface:ItmRpcServiceused for building tunnels between teps on all Dpns and hwVtep- Specified by:
addL2GwDevicein interfaceItmRpcService
-
getWatchPortForTunnel
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetWatchPortForTunnelOutput>> getWatchPortForTunnel(GetWatchPortForTunnelInput input)
Description copied from interface:ItmRpcServiceretrieve the watch port for the BFD enabled point to point tunnel- Specified by:
getWatchPortForTunnelin interfaceItmRpcService
-
addL2GwMlagDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddL2GwMlagDeviceOutput>> addL2GwMlagDevice(AddL2GwMlagDeviceInput input)
Description copied from interface:ItmRpcServiceused for building tunnels between teps on all Dpns and hwVtep- Specified by:
addL2GwMlagDevicein interfaceItmRpcService
-
deleteL2GwMlagDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL2GwMlagDeviceOutput>> deleteL2GwMlagDevice(DeleteL2GwMlagDeviceInput input)
Description copied from interface:ItmRpcServiceused for deleting tunnels between teps on all Dpns and hwVtep- Specified by:
deleteL2GwMlagDevicein interfaceItmRpcService
-
isTunnelInternalOrExternal
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<IsTunnelInternalOrExternalOutput>> isTunnelInternalOrExternal(IsTunnelInternalOrExternalInput input)
Description copied from interface:ItmRpcServiceUsed for determining whether tunnel is an internal or an external tunnel- Specified by:
isTunnelInternalOrExternalin interfaceItmRpcService
-
isDcgwPresent
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<IsDcgwPresentOutput>> isDcgwPresent(IsDcgwPresentInput input)
Description copied from interface:ItmRpcServiceUsed for determining whether tunnel is an internal or an external tunnel- Specified by:
isDcgwPresentin interfaceItmRpcService
-
getDpnEndpointIps
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnEndpointIpsOutput>> getDpnEndpointIps(GetDpnEndpointIpsInput input)
Description copied from interface:ItmRpcServiceused to retrieve tunnel end point IPs of a Dpn- Specified by:
getDpnEndpointIpsin interfaceItmRpcService
-
getDpnInfo
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnInfoOutput>> getDpnInfo(GetDpnInfoInput input)
Description copied from interface:ItmRpcServiceGets the dpn id and tep ip information of compute nodes- Specified by:
getDpnInfoin interfaceItmRpcService
-
getDcGatewayIpList
public static java.util.List<DcGatewayIp> getDcGatewayIpList(TypedReadWriteTransaction<Datastore.Configuration> tx) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException
- Throws:
java.util.concurrent.ExecutionExceptionjava.lang.InterruptedException
-
-