Class AkkaEntityOwnershipService
java.lang.Object
org.opendaylight.controller.eos.akka.AkkaEntityOwnershipService
- All Implemented Interfaces:
AutoCloseable,DataCenterControl,GenericEntityOwnershipService<YangInstanceIdentifier,,DOMEntity, DOMEntityOwnershipListener> DOMEntityOwnershipService,OdlEntityOwnersService,RpcService
@Singleton
public class AkkaEntityOwnershipService
extends Object
implements DOMEntityOwnershipService, DataCenterControl, AutoCloseable, OdlEntityOwnersService
DOMEntityOwnershipService implementation backed by native Akka clustering constructs. We use distributed-data
to track all registered candidates and cluster-singleton to maintain a single cluster-wide authority which selects
the appropriate owners.
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAkkaEntityOwnershipService(ActorSystem actorSystem, BindingCodecTree codecTree) AkkaEntityOwnershipService(ActorSystemProvider actorProvider, RpcProviderService rpcProvider, BindingCodecTree codecTree) -
Method Summary
Modifier and TypeMethodDescriptionActivates the Entity Ownership Service in the datacenter that this method is called.voidclose()Deactivates the Entity Ownership Service in the datacenter that this method is called.getEntities(GetEntitiesInput input) Invokeget-entitiesRPC.getEntity(GetEntityInput input) Invokeget-entityRPC.Invokeget-entity-ownerRPC.getOwnershipState(DOMEntity entity) booleanisCandidateRegistered(DOMEntity forEntity) registerCandidate(DOMEntity entity) registerListener(String entityType, DOMEntityOwnershipListener listener)
-
Field Details
-
ownerSupervisor
-
-
Constructor Details
-
AkkaEntityOwnershipService
protected AkkaEntityOwnershipService(ActorSystem actorSystem, BindingCodecTree codecTree) throws ExecutionException, InterruptedException -
AkkaEntityOwnershipService
@Inject public AkkaEntityOwnershipService(ActorSystemProvider actorProvider, RpcProviderService rpcProvider, BindingCodecTree codecTree) throws ExecutionException, InterruptedException
-
-
Method Details
-
close
- Specified by:
closein interfaceAutoCloseable- Throws:
InterruptedExceptionExecutionException
-
registerCandidate
public DOMEntityOwnershipCandidateRegistration registerCandidate(DOMEntity entity) throws CandidateAlreadyRegisteredException - Specified by:
registerCandidatein interfaceDOMEntityOwnershipService- Specified by:
registerCandidatein interfaceGenericEntityOwnershipService<YangInstanceIdentifier,DOMEntity, DOMEntityOwnershipListener> - Throws:
CandidateAlreadyRegisteredException
-
registerListener
public DOMEntityOwnershipListenerRegistration registerListener(String entityType, DOMEntityOwnershipListener listener) - Specified by:
registerListenerin interfaceDOMEntityOwnershipService- Specified by:
registerListenerin interfaceGenericEntityOwnershipService<YangInstanceIdentifier,DOMEntity, DOMEntityOwnershipListener>
-
getOwnershipState
- Specified by:
getOwnershipStatein interfaceDOMEntityOwnershipService- Specified by:
getOwnershipStatein interfaceGenericEntityOwnershipService<YangInstanceIdentifier,DOMEntity, DOMEntityOwnershipListener>
-
isCandidateRegistered
- Specified by:
isCandidateRegisteredin interfaceDOMEntityOwnershipService- Specified by:
isCandidateRegisteredin interfaceGenericEntityOwnershipService<YangInstanceIdentifier,DOMEntity, DOMEntityOwnershipListener>
-
activateDataCenter
Description copied from interface:DataCenterControlActivates the Entity Ownership Service in the datacenter that this method is called.- Specified by:
activateDataCenterin interfaceDataCenterControl- Returns:
- Completion future
-
deactivateDataCenter
Description copied from interface:DataCenterControlDeactivates the Entity Ownership Service in the datacenter that this method is called.- Specified by:
deactivateDataCenterin interfaceDataCenterControl- Returns:
- Completion future
-
getEntities
Description copied from interface:OdlEntityOwnersServiceInvokeget-entitiesRPC.- Specified by:
getEntitiesin interfaceOdlEntityOwnersService- Parameters:
input- ofget-entities- Returns:
- output of
get-entities
-
getEntity
Description copied from interface:OdlEntityOwnersServiceInvokeget-entityRPC.- Specified by:
getEntityin interfaceOdlEntityOwnersService- Parameters:
input- ofget-entity- Returns:
- output of
get-entity
-
getEntityOwner
Description copied from interface:OdlEntityOwnersServiceInvokeget-entity-ownerRPC.- Specified by:
getEntityOwnerin interfaceOdlEntityOwnersService- Parameters:
input- ofget-entity-owner- Returns:
- output of
get-entity-owner
-