X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Futils%2FMockClusterWrapper.java;h=dbbc2f90dc9283782441e6c596ded9a71469a97f;hp=803aa03b7c722311588a5514c2191796b3b9278c;hb=02f738dec4a31bdad04e42b2c19ecf09aacc0b87;hpb=c46e223995956f1f759c551163c212947c1e2fb7 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockClusterWrapper.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockClusterWrapper.java index 803aa03b7c..dbbc2f90dc 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockClusterWrapper.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockClusterWrapper.java @@ -9,23 +9,44 @@ package org.opendaylight.controller.cluster.datastore.utils; import akka.actor.ActorRef; +import akka.actor.Address; import akka.actor.AddressFromURIString; import akka.cluster.ClusterEvent; import akka.cluster.MemberStatus; import akka.cluster.UniqueAddress; -import org.opendaylight.controller.cluster.datastore.ClusterWrapper; -import scala.collection.JavaConversions; - import java.util.HashSet; import java.util.Set; +import org.opendaylight.controller.cluster.datastore.ClusterWrapper; +import scala.collection.JavaConversions; public class MockClusterWrapper implements ClusterWrapper{ - @Override public void subscribeToMemberEvents(ActorRef actorRef) { + private Address selfAddress = new Address("akka.tcp", "test", "127.0.0.1", 2550); + private String currentMemberName = "member-1"; + + public MockClusterWrapper() { + } + + public MockClusterWrapper(String currentMemberName) { + this.currentMemberName = currentMemberName; + } + + @Override + public void subscribeToMemberEvents(ActorRef actorRef) { } - @Override public String getCurrentMemberName() { - return "member-1"; + @Override + public String getCurrentMemberName() { + return currentMemberName; + } + + @Override + public Address getSelfAddress() { + return selfAddress; + } + + public void setSelfAddress(Address selfAddress) { + this.selfAddress = selfAddress; } public static void sendMemberUp(ActorRef to, String memberName, String address){ @@ -36,7 +57,7 @@ public class MockClusterWrapper implements ClusterWrapper{ to.tell(createMemberRemoved(memberName, address), null); } - private static ClusterEvent.MemberRemoved createMemberRemoved(String memberName, String address) { + public static ClusterEvent.MemberRemoved createMemberRemoved(String memberName, String address) { akka.cluster.UniqueAddress uniqueAddress = new UniqueAddress( AddressFromURIString.parse(address), 55); @@ -53,7 +74,7 @@ public class MockClusterWrapper implements ClusterWrapper{ } - private static ClusterEvent.MemberUp createMemberUp(String memberName, String address) { + public static ClusterEvent.MemberUp createMemberUp(String memberName, String address) { akka.cluster.UniqueAddress uniqueAddress = new UniqueAddress( AddressFromURIString.parse(address), 55); @@ -66,4 +87,32 @@ public class MockClusterWrapper implements ClusterWrapper{ return new ClusterEvent.MemberUp(member); } + + public static ClusterEvent.UnreachableMember createUnreachableMember(String memberName, String address) { + akka.cluster.UniqueAddress uniqueAddress = new UniqueAddress( + AddressFromURIString.parse(address), 55); + + Set roles = new HashSet<>(); + + roles.add(memberName); + + akka.cluster.Member member = new akka.cluster.Member(uniqueAddress, 1, MemberStatus.up(), + JavaConversions.asScalaSet(roles).toSet()); + + return new ClusterEvent.UnreachableMember(member); + } + + public static ClusterEvent.ReachableMember createReachableMember(String memberName, String address) { + akka.cluster.UniqueAddress uniqueAddress = new UniqueAddress( + AddressFromURIString.parse(address), 55); + + Set roles = new HashSet<>(); + + roles.add(memberName); + + akka.cluster.Member member = new akka.cluster.Member(uniqueAddress, 1, MemberStatus.up(), + JavaConversions.asScalaSet(roles).toSet()); + + return new ClusterEvent.ReachableMember(member); + } }