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 nodevoid
close()
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 tunnelsvoid
start()
-
-
-
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:ItmRpcService
used to retrieve tunnel interface id between Dpns- Specified by:
getTunnelInterfaceName
in interfaceItmRpcService
-
getEgressActionsForTunnel
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetEgressActionsForTunnelOutput>> getEgressActionsForTunnel(GetEgressActionsForTunnelInput input)
Description copied from interface:ItmRpcService
used to retrieve group actions to use from interface name- Specified by:
getEgressActionsForTunnel
in interfaceItmRpcService
-
getTunnelType
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetTunnelTypeOutput>> getTunnelType(GetTunnelTypeInput input)
Description copied from interface:ItmRpcService
to get the type of the tunnel interface(vxlan, vxlan-gpe, gre, etc.)- Specified by:
getTunnelType
in interfaceItmRpcService
-
setBfdParamOnTunnel
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<SetBfdParamOnTunnelOutput>> setBfdParamOnTunnel(SetBfdParamOnTunnelInput input)
Description copied from interface:ItmRpcService
used for turning ON/OFF to monitor individual tunnels- Specified by:
setBfdParamOnTunnel
in interfaceItmRpcService
-
removeExternalTunnelEndpoint
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveExternalTunnelEndpointOutput>> removeExternalTunnelEndpoint(RemoveExternalTunnelEndpointInput input)
Description copied from interface:ItmRpcService
used for building tunnels between teps on all Dpns and external node- Specified by:
removeExternalTunnelEndpoint
in interfaceItmRpcService
-
removeExternalTunnelFromDpns
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveExternalTunnelFromDpnsOutput>> removeExternalTunnelFromDpns(RemoveExternalTunnelFromDpnsInput input)
Description copied from interface:ItmRpcService
used for building tunnels between a Dpn and external node- Specified by:
removeExternalTunnelFromDpns
in interfaceItmRpcService
-
buildExternalTunnelFromDpns
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<BuildExternalTunnelFromDpnsOutput>> buildExternalTunnelFromDpns(BuildExternalTunnelFromDpnsInput input)
Description copied from interface:ItmRpcService
used for building tunnels between a Dpn and external node- Specified by:
buildExternalTunnelFromDpns
in interfaceItmRpcService
-
addExternalTunnelEndpoint
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddExternalTunnelEndpointOutput>> addExternalTunnelEndpoint(AddExternalTunnelEndpointInput input)
Description copied from interface:ItmRpcService
used for building tunnels between teps on all Dpns and external node- Specified by:
addExternalTunnelEndpoint
in interfaceItmRpcService
-
getExternalTunnelInterfaceName
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetExternalTunnelInterfaceNameOutput>> getExternalTunnelInterfaceName(GetExternalTunnelInterfaceNameInput input)
Description copied from interface:ItmRpcService
used to retrieve external tunnel interface id between Dpns/TORs- Specified by:
getExternalTunnelInterfaceName
in interfaceItmRpcService
-
createTerminatingServiceActions
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<CreateTerminatingServiceActionsOutput>> createTerminatingServiceActions(CreateTerminatingServiceActionsInput input)
Description copied from interface:ItmRpcService
used for programming the terminating service actions- Specified by:
createTerminatingServiceActions
in interfaceItmRpcService
-
removeTerminatingServiceActions
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveTerminatingServiceActionsOutput>> removeTerminatingServiceActions(RemoveTerminatingServiceActionsInput input)
Description copied from interface:ItmRpcService
used for removing the terminating service actions- Specified by:
removeTerminatingServiceActions
in 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:ItmRpcService
used to retrieve tunnel interface id with src Dpn and destination ip/dpn- Specified by:
getInternalOrExternalInterfaceName
in interfaceItmRpcService
-
deleteL2GwDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL2GwDeviceOutput>> deleteL2GwDevice(DeleteL2GwDeviceInput input)
Description copied from interface:ItmRpcService
used for deleting tunnels between teps on all Dpns and hwVtep- Specified by:
deleteL2GwDevice
in interfaceItmRpcService
-
addL2GwDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddL2GwDeviceOutput>> addL2GwDevice(AddL2GwDeviceInput input)
Description copied from interface:ItmRpcService
used for building tunnels between teps on all Dpns and hwVtep- Specified by:
addL2GwDevice
in interfaceItmRpcService
-
getWatchPortForTunnel
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetWatchPortForTunnelOutput>> getWatchPortForTunnel(GetWatchPortForTunnelInput input)
Description copied from interface:ItmRpcService
retrieve the watch port for the BFD enabled point to point tunnel- Specified by:
getWatchPortForTunnel
in interfaceItmRpcService
-
addL2GwMlagDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddL2GwMlagDeviceOutput>> addL2GwMlagDevice(AddL2GwMlagDeviceInput input)
Description copied from interface:ItmRpcService
used for building tunnels between teps on all Dpns and hwVtep- Specified by:
addL2GwMlagDevice
in interfaceItmRpcService
-
deleteL2GwMlagDevice
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL2GwMlagDeviceOutput>> deleteL2GwMlagDevice(DeleteL2GwMlagDeviceInput input)
Description copied from interface:ItmRpcService
used for deleting tunnels between teps on all Dpns and hwVtep- Specified by:
deleteL2GwMlagDevice
in interfaceItmRpcService
-
isTunnelInternalOrExternal
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<IsTunnelInternalOrExternalOutput>> isTunnelInternalOrExternal(IsTunnelInternalOrExternalInput input)
Description copied from interface:ItmRpcService
Used for determining whether tunnel is an internal or an external tunnel- Specified by:
isTunnelInternalOrExternal
in interfaceItmRpcService
-
isDcgwPresent
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<IsDcgwPresentOutput>> isDcgwPresent(IsDcgwPresentInput input)
Description copied from interface:ItmRpcService
Used for determining whether tunnel is an internal or an external tunnel- Specified by:
isDcgwPresent
in interfaceItmRpcService
-
getDpnEndpointIps
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnEndpointIpsOutput>> getDpnEndpointIps(GetDpnEndpointIpsInput input)
Description copied from interface:ItmRpcService
used to retrieve tunnel end point IPs of a Dpn- Specified by:
getDpnEndpointIps
in interfaceItmRpcService
-
getDpnInfo
public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnInfoOutput>> getDpnInfo(GetDpnInfoInput input)
Description copied from interface:ItmRpcService
Gets the dpn id and tep ip information of compute nodes- Specified by:
getDpnInfo
in 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.ExecutionException
java.lang.InterruptedException
-
-