X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fentityownership%2FEntityOwnershipShardTest.java;h=eb649207f7d67c3553a22f2bd4d16ef2eb7b8097;hb=204f45f8b3233dbea87e2c8065914f0d2a0ded07;hp=cb8dade4cbf7e5ba04c230d6646265ced734e22c;hpb=e9cceae4b6689c7c3880b441c13d35cbe4b13ce0;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipShardTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipShardTest.java index cb8dade4cb..eb649207f7 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipShardTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/entityownership/EntityOwnershipShardTest.java @@ -48,6 +48,7 @@ import org.opendaylight.controller.cluster.datastore.entityownership.messages.Re import org.opendaylight.controller.cluster.datastore.entityownership.messages.RegisterListenerLocal; import org.opendaylight.controller.cluster.datastore.entityownership.messages.UnregisterCandidateLocal; import org.opendaylight.controller.cluster.datastore.entityownership.messages.UnregisterListenerLocal; +import org.opendaylight.controller.cluster.datastore.entityownership.selectionstrategy.EntityOwnerSelectionStrategyConfig; import org.opendaylight.controller.cluster.datastore.entityownership.selectionstrategy.LastCandidateSelectionStrategy; import org.opendaylight.controller.cluster.datastore.identifiers.ShardIdentifier; import org.opendaylight.controller.cluster.datastore.messages.BatchedModifications; @@ -405,15 +406,15 @@ public class EntityOwnershipShardTest extends AbstractEntityOwnershipTest { TestActorRef peer1 = actorFactory.createTestActor(newShardProps(peerId1, ImmutableMap.builder().put(leaderId.toString(), ""). put(peerId2.toString(), "").build(), - peerMemberName1).withDispatcher(Dispatchers.DefaultDispatcherId()), peerId1.toString()); + peerMemberName1, EntityOwnerSelectionStrategyConfig.newBuilder().build()).withDispatcher(Dispatchers.DefaultDispatcherId()), peerId1.toString()); TestActorRef peer2 = actorFactory.createTestActor(newShardProps(peerId2, ImmutableMap.builder().put(leaderId.toString(), ""). put(peerId1.toString(), "").build(), - peerMemberName2). withDispatcher(Dispatchers.DefaultDispatcherId()), peerId2.toString()); + peerMemberName2, EntityOwnerSelectionStrategyConfig.newBuilder().build()). withDispatcher(Dispatchers.DefaultDispatcherId()), peerId2.toString()); TestActorRef leader = actorFactory.createTestActor(newShardProps(leaderId, ImmutableMap.builder().put(peerId1.toString(), peer1.path().toString()). - put(peerId2.toString(), peer2.path().toString()).build(), LOCAL_MEMBER_NAME). + put(peerId2.toString(), peer2.path().toString()).build(), LOCAL_MEMBER_NAME, EntityOwnerSelectionStrategyConfig.newBuilder().build()). withDispatcher(Dispatchers.DefaultDispatcherId()), leaderId.toString()); leader.tell(new ElectionTimeout(), leader); @@ -498,7 +499,7 @@ public class EntityOwnershipShardTest extends AbstractEntityOwnershipTest { peer2 = actorFactory.createTestActor(newShardProps(peerId2, ImmutableMap.builder().put(leaderId.toString(), ""). put(peerId1.toString(), "").build(), - peerMemberName2). withDispatcher(Dispatchers.DefaultDispatcherId()), peerId2.toString()); + peerMemberName2, EntityOwnerSelectionStrategyConfig.newBuilder().build()). withDispatcher(Dispatchers.DefaultDispatcherId()), peerId2.toString()); leader.tell(new PeerUp(peerMemberName2, peerId2.toString()), ActorRef.noSender()); // Send PeerUp again - should be noop leader.tell(new PeerUp(peerMemberName2, peerId2.toString()), ActorRef.noSender()); @@ -539,7 +540,7 @@ public class EntityOwnershipShardTest extends AbstractEntityOwnershipTest { peer1 = actorFactory.createTestActor(newShardProps(peerId1, ImmutableMap.builder().put(leaderId.toString(), ""). put(peerId2.toString(), "").build(), - peerMemberName1).withDispatcher(Dispatchers.DefaultDispatcherId()), peerId1.toString()); + peerMemberName1, EntityOwnerSelectionStrategyConfig.newBuilder().build()).withDispatcher(Dispatchers.DefaultDispatcherId()), peerId1.toString()); leader.tell(new PeerUp(peerMemberName1, peerId1.toString()), ActorRef.noSender()); verifyOwner(leader, ENTITY_TYPE, ENTITY_ID4, ""); @@ -588,7 +589,7 @@ public class EntityOwnershipShardTest extends AbstractEntityOwnershipTest { TestActorRef leader = actorFactory.createTestActor(newShardProps(leaderId, ImmutableMap.builder().put(localId.toString(), shard.path().toString()).build(), - LOCAL_MEMBER_NAME).withDispatcher(Dispatchers.DefaultDispatcherId()), leaderId.toString()); + LOCAL_MEMBER_NAME, EntityOwnerSelectionStrategyConfig.newBuilder().build()).withDispatcher(Dispatchers.DefaultDispatcherId()), leaderId.toString()); leader.tell(new ElectionTimeout(), leader); kit.waitUntilLeader(leader); @@ -803,14 +804,20 @@ public class EntityOwnershipShardTest extends AbstractEntityOwnershipTest { return newShardProps(Collections.emptyMap()); } + private Props newShardProps(EntityOwnerSelectionStrategyConfig strategyConfig) { + return newShardProps(newShardId(LOCAL_MEMBER_NAME), Collections.emptyMap(), + LOCAL_MEMBER_NAME, strategyConfig); + } + private Props newShardProps(Map peers) { - return newShardProps(newShardId(LOCAL_MEMBER_NAME), peers, LOCAL_MEMBER_NAME); + return newShardProps(newShardId(LOCAL_MEMBER_NAME), peers, LOCAL_MEMBER_NAME, EntityOwnerSelectionStrategyConfig.newBuilder().build()); } - private Props newShardProps(ShardIdentifier shardId, Map peers, String memberName) { + private Props newShardProps(ShardIdentifier shardId, Map peers, String memberName, + EntityOwnerSelectionStrategyConfig config) { return EntityOwnershipShard.newBuilder().id(shardId).peerAddresses(peers). datastoreContext(dataStoreContextBuilder.build()).schemaContext(SCHEMA_CONTEXT). - localMemberName(memberName).props().withDispatcher(Dispatchers.DefaultDispatcherId()); + localMemberName(memberName).ownerSelectionStrategyConfig(config).props().withDispatcher(Dispatchers.DefaultDispatcherId()); } private static ShardIdentifier newShardId(String memberName) { @@ -877,8 +884,9 @@ public class EntityOwnershipShardTest extends AbstractEntityOwnershipTest { @Test public void testDelayedEntityOwnerSelection() throws Exception { ShardTestKit kit = new ShardTestKit(getSystem()); - TestActorRef shard = actorFactory.createTestActor(newShardProps()); - shard.underlyingActor().addEntityOwnerSelectionStrategy(ENTITY_TYPE, LastCandidateSelectionStrategy.class); + EntityOwnerSelectionStrategyConfig.Builder builder + = EntityOwnerSelectionStrategyConfig.newBuilder().addStrategy(ENTITY_TYPE, LastCandidateSelectionStrategy.class, 500); + TestActorRef shard = actorFactory.createTestActor(newShardProps(builder.build())); kit.waitUntilLeader(shard); Entity entity = new Entity(ENTITY_TYPE, ENTITY_ID1);