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%2Futils%2FMockClusterWrapper.java;h=0b9371698fafd4e703cc0edf998fa07b8ced99e6;hb=5464f50be733df1bbbe31cf05665d542d3b7c5e7;hp=803aa03b7c722311588a5514c2191796b3b9278c;hpb=c222e37f2a0f0f3f6266242fbea2d3b018f4e6e3;p=controller.git 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..0b9371698f 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,34 +9,57 @@ 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 java.util.HashSet; +import java.util.Set; +import org.opendaylight.controller.cluster.access.concepts.MemberName; import org.opendaylight.controller.cluster.datastore.ClusterWrapper; import scala.collection.JavaConversions; -import java.util.HashSet; -import java.util.Set; +public class MockClusterWrapper implements ClusterWrapper { + + private Address selfAddress = new Address("akka.tcp", "test", "127.0.0.1", 2550); + private final MemberName currentMemberName; + + public MockClusterWrapper() { + this("member-1"); + } + + public MockClusterWrapper(String currentMemberName) { + this.currentMemberName = MemberName.forName(currentMemberName); + } -public class MockClusterWrapper implements ClusterWrapper{ + @Override + public void subscribeToMemberEvents(ActorRef actorRef) { + } + + @Override + public MemberName getCurrentMemberName() { + return currentMemberName; + } - @Override public void subscribeToMemberEvents(ActorRef actorRef) { + @Override + public Address getSelfAddress() { + return selfAddress; } - @Override public String getCurrentMemberName() { - return "member-1"; + public void setSelfAddress(Address selfAddress) { + this.selfAddress = selfAddress; } - public static void sendMemberUp(ActorRef to, String memberName, String address){ + public static void sendMemberUp(ActorRef to, String memberName, String address) { to.tell(createMemberUp(memberName, address), null); } - public static void sendMemberRemoved(ActorRef to, String memberName, String address){ + public static void sendMemberRemoved(ActorRef to, String memberName, String address) { 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 +76,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 +89,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); + } }