Ejemplo n.º 1
0
 public void Update(VCActor sender, VCActor receiver, VCMessage message, string user)
 {
     Sender   = sender;
     Receiver = receiver;
     Message  = message;
     User     = user;
 }
Ejemplo n.º 2
0
        public void Enqueue(IActorRef receiver, Envelope envelope)
        {
            VCMessage message       = GetMessage(envelope);
            VCActor   senderActor   = new VCActor(envelope.Sender.Path.ToString(), GetActorType(envelope.Sender));
            VCActor   receiverActor = new VCActor(receiver.Path.ToString(), GetActorType(receiver));

            OnSend(receiverActor, senderActor, message);

            OnReceive(receiverActor, senderActor, message);

            SendToAPI();

            _messageQueue.Enqueue(receiver, envelope);
        }
Ejemplo n.º 3
0
        private void OnSend(VCActor receiver, VCActor sender, VCMessage message)
        {
            _clock_sender = VectorClockHelper.GetVectorClock(sender.Path.ToString());

            _clock_sender.Update(
                sender,
                receiver,
                message,
                GetUser()
                );

            _clock_sender.Tick(sender.Path.ToString());

            VectorClockHelper.Update(sender.Path.ToString(), _clock_sender);
        }