예제 #1
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="cancellationSource">ReminderCancellationSource</param>
 /// <param name="reminderName">string</param>
 /// <param name="callbackState">State</param>
 public RemindEvent(ReminderCancellationSource cancellationSource,
                    string reminderName, object callbackState)
 {
     this.CancellationSource = cancellationSource;
     this.ReminderName       = reminderName;
     this.CallbackState      = callbackState;
 }
예제 #2
0
        private void InitOnEntry()
        {
            this.Target        = (this.ReceivedEvent as InitEvent).Target;
            this.ReminderName  = (this.ReceivedEvent as InitEvent).ReminderName;
            this.CallbackState = (this.ReceivedEvent as InitEvent).CallbackState;

            this.CancellationSource = (ReminderCancellationSource)this.CreateReminderCancellationSource();
            ActorModel.ActorMachineMap[this.Target].RegisteredReminders.Add(
                this.CancellationSource as ReminderCancellationSource);

            this.Send((this.ReceivedEvent as InitEvent).ActorCompletionMachine,
                      new ActorCompletionMachine.SetResultRequest(this.CancellationSource));

            this.Goto(typeof(Active));
        }