コード例 #1
0
        private void memberUp(AC.Member m)
        {
            add(m);

            if (m.UniqueAddress == SelfUniqueAddress)
            {
                _isSelfAdded = true;
            }

            _stableDeadline = resetStableDeadline();
        }
コード例 #2
0
 private void memberRemoved(AC.Member m)
 {
     if (m.UniqueAddress == SelfUniqueAddress)
     {
         Context.Stop(Self);
     }
     else
     {
         _unreachable.Remove(m.UniqueAddress);
         _members.Remove(m);
         _stableDeadline = resetStableDeadline();
     }
 }
コード例 #3
0
        private void unreachableMember(AC.Member m)
        {
            if (m.UniqueAddress == SelfUniqueAddress)
            {
                return;
            }

            if (!_ignoreMemberStatus.Contains(m.Status))
            {
                _unreachable.Add(m.UniqueAddress);

                if (m.Status != AC.MemberStatus.Joining)
                {
                    add(m);
                }
            }

            _stableDeadline = resetStableDeadline();
        }
コード例 #4
0
        private void reachableMember(AC.Member m)
        {
            _unreachable.Remove(m.UniqueAddress);

            _stableDeadline = resetStableDeadline();
        }
コード例 #5
0
 private void ReachableMember(Member m)
 {
     _state = _state.ReachableMember(m.UniqueAddress);
 }
コード例 #6
0
 /// <summary>
 /// Removes a member from the node ring.
 /// </summary>
 private void RemoveMember(Member member)
 {
     Nodes        = Nodes.Remove(member.Address);
     LatestGossip = LatestGossip.Remove(member.Address);
 }
コード例 #7
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// TBD
 /// </summary>
 /// <param name="member">TBD</param>
 public ReachableMember(Member member)
     : base(member)
 {
 }
コード例 #8
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberJoined"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 public MemberExited(Member member)
     : base(member, MemberStatus.Exiting)
 {
 }
コード例 #9
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberJoined"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 public MemberDowned(Member member)
     : base(member, MemberStatus.Down)
 {
 }
コード例 #10
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberWeaklyUp"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 public MemberWeaklyUp(Member member)
     : base(member, MemberStatus.WeaklyUp)
 {
 }
コード例 #11
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberJoined"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 public MemberLeft(Member member)
     : base(member, MemberStatus.Leaving)
 {
 }
コード例 #12
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberUp"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 public MemberUp(Member member)
     : base(member, MemberStatus.Up)
 {
 }
コード例 #13
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberJoined"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 public MemberJoined(Member member)
     : base(member, MemberStatus.Joining)
 {
 }
コード例 #14
0
ファイル: ClusterEvent.cs プロジェクト: tjaskula/akka.net
 /// <summary>
 /// Initializes a new instance of the <see cref="MemberStatusChange"/> class.
 /// </summary>
 /// <param name="member">The node that changed state.</param>
 /// <param name="validStatus">The state that the node changed towards.</param>
 /// <exception cref="ArgumentException">
 /// This exception is thrown if the node's current status doesn't match the given status, <paramref name="validStatus"/>.
 /// </exception>
 protected MemberStatusChange(Member member, MemberStatus validStatus)
 {
     if (member.Status != validStatus)
         throw new ArgumentException($"Expected {validStatus} state, got: {member}");
     _member = member;
 }
コード例 #15
0
 private void add(AC.Member m)
 {
     _members = _members.Add(m);
 }
コード例 #16
0
ファイル: ClusterEvent.cs プロジェクト: tometchy/akka.net
 /// <summary>
 /// TBD
 /// </summary>
 /// <param name="member">TBD</param>
 protected ReachabilityEvent(Member member)
 {
     _member = member;
 }
コード例 #17
0
ファイル: Gossip.cs プロジェクト: ststeiger/akka.net
 public Member GetMember(UniqueAddress node)
 {
     return(_membersMap.Value.GetOrElse(node,
                                        Member.Removed(node))); // placeholder for removed member
 }
コード例 #18
0
 /// <summary>
 /// Adds a member to the node ring.
 /// </summary>
 private void AddMember(Member member)
 {
     Nodes = Nodes.Add(member.Address);
 }