Class LispMappingService
java.lang.Object
org.opendaylight.lispflowmapping.implementation.LispMappingService
- All Implemented Interfaces:
AutoCloseable,EventListener,IFlowMapping,IMapNotifyHandler,IMapRequestResultHandler,org.opendaylight.mdsal.singleton.common.api.ClusterSingletonService,OdlLispProtoListener,org.opendaylight.yangtools.concepts.Identifiable<org.opendaylight.mdsal.singleton.common.api.ServiceGroupIdentifier>,org.opendaylight.yangtools.yang.binding.NotificationListener
@Singleton
public class LispMappingService
extends Object
implements IFlowMapping, IMapRequestResultHandler, IMapNotifyHandler, OdlLispProtoListener, AutoCloseable, org.opendaylight.mdsal.singleton.common.api.ClusterSingletonService
-
Constructor Summary
ConstructorsConstructorDescriptionLispMappingService(IMappingService mappingService, OdlLispSbService odlLispService, org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider clusterSingletonService, org.opendaylight.mdsal.binding.api.RpcProviderService rpcProviderService, org.opendaylight.mdsal.binding.api.NotificationService notificationService) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()com.google.common.util.concurrent.ListenableFuture<Void>org.opendaylight.mdsal.singleton.common.api.ServiceGroupIdentifierorg.opendaylight.mdsal.binding.api.NotificationServicevoidhandleMapNotify(MapNotify notify, List<TransportAddress> rlocs) Handle map-notify message.org.apache.commons.lang3.tuple.Pair<MapNotify,List<TransportAddress>> handleMapRegister(MapRegister mapRegister) Handle southbound map-request.voidhandleMapReply(MapReply reply) Handle return map-reply message.handleMapRequest(MapRequest request) Handle southbound map-request.voidhandleNonProxyMapRequest(MapRequest mapRequest, TransportAddress transportAddress) Handle map-request to be forwarded to authoritative ETR.voidhandleSMR(MapRequest smrMapRequest, Rloc subscriber) Handle Solicit Map Request message.voidvoidonAddMapping(AddMapping mapRegisterNotification) voidonGotMapNotify(GotMapNotify notification) voidonGotMapReply(GotMapReply notification) voidonMappingKeepAlive(MappingKeepAlive notification) voidonRequestMapping(RequestMapping mapRequestNotification) voidonXtrReplyMapping(XtrReplyMapping notification) voidonXtrRequestMapping(XtrRequestMapping notification) voidsetShouldAuthenticate(boolean shouldAuthenticate) voidsetShouldUseSmr(boolean shouldUseSmr) Configure LISP mapping service to track and notify of changes mapping requesters.boolean
-
Constructor Details
-
LispMappingService
@Inject public LispMappingService(IMappingService mappingService, OdlLispSbService odlLispService, org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider clusterSingletonService, org.opendaylight.mdsal.binding.api.RpcProviderService rpcProviderService, org.opendaylight.mdsal.binding.api.NotificationService notificationService)
-
-
Method Details
-
shouldUseSmr
public boolean shouldUseSmr() -
setShouldUseSmr
public void setShouldUseSmr(boolean shouldUseSmr) Description copied from interface:IFlowMappingConfigure LISP mapping service to track and notify of changes mapping requesters.- Specified by:
setShouldUseSmrin interfaceIFlowMapping- Parameters:
shouldUseSmr- Configure state of service
-
getNotificationService
public org.opendaylight.mdsal.binding.api.NotificationService getNotificationService() -
handleMapRequest
Description copied from interface:IFlowMappingHandle southbound map-request.- Specified by:
handleMapRequestin interfaceIFlowMapping- Parameters:
request- The map-request messages- Returns:
- a map-reply messages
-
handleMapRegister
public org.apache.commons.lang3.tuple.Pair<MapNotify,List<TransportAddress>> handleMapRegister(MapRegister mapRegister) Description copied from interface:IFlowMappingHandle southbound map-request.- Specified by:
handleMapRegisterin interfaceIFlowMapping- Parameters:
mapRegister- The map-register message- Returns:
- a map-notify message, if requested in the map-register or null otherwise
-
setShouldAuthenticate
public void setShouldAuthenticate(boolean shouldAuthenticate) -
onAddMapping
- Specified by:
onAddMappingin interfaceOdlLispProtoListener
-
onRequestMapping
- Specified by:
onRequestMappingin interfaceOdlLispProtoListener
-
onGotMapReply
- Specified by:
onGotMapReplyin interfaceOdlLispProtoListener
-
onGotMapNotify
- Specified by:
onGotMapNotifyin interfaceOdlLispProtoListener
-
onXtrRequestMapping
- Specified by:
onXtrRequestMappingin interfaceOdlLispProtoListener
-
onXtrReplyMapping
- Specified by:
onXtrReplyMappingin interfaceOdlLispProtoListener
-
onMappingKeepAlive
- Specified by:
onMappingKeepAlivein interfaceOdlLispProtoListener
-
handleMapReply
Description copied from interface:IMapRequestResultHandlerHandle return map-reply message.- Specified by:
handleMapReplyin interfaceIMapRequestResultHandler- Parameters:
reply- The map-reply message
-
handleMapNotify
Description copied from interface:IMapNotifyHandlerHandle map-notify message.- Specified by:
handleMapNotifyin interfaceIMapNotifyHandler- Parameters:
notify- The map-notify messagerlocs- A list of RLOCs which need to be notified
-
handleSMR
Description copied from interface:IMapNotifyHandlerHandle Solicit Map Request message.- Specified by:
handleSMRin interfaceIMapNotifyHandler- Parameters:
smrMapRequest- the SMR messagesubscriber- The address of the subscriber that should be SMRed
-
handleNonProxyMapRequest
Description copied from interface:IMapRequestResultHandlerHandle map-request to be forwarded to authoritative ETR.- Specified by:
handleNonProxyMapRequestin interfaceIMapRequestResultHandler- Parameters:
mapRequest- The map-request messagetransportAddress- The address of the ETR
-
close
- Specified by:
closein interfaceAutoCloseable- Throws:
Exception
-
instantiateServiceInstance
public void instantiateServiceInstance()- Specified by:
instantiateServiceInstancein interfaceorg.opendaylight.mdsal.singleton.common.api.ClusterSingletonService
-
closeServiceInstance
- Specified by:
closeServiceInstancein interfaceorg.opendaylight.mdsal.singleton.common.api.ClusterSingletonService
-
getIdentifier
public org.opendaylight.mdsal.singleton.common.api.ServiceGroupIdentifier getIdentifier()- Specified by:
getIdentifierin interfaceorg.opendaylight.yangtools.concepts.Identifiable<org.opendaylight.mdsal.singleton.common.api.ServiceGroupIdentifier>
-