private Proto.ReminderEntry EntryToProto(Reminder.Entry entry) { var proto = new Proto.ReminderEntry { TaskId = entry.TaskId, Recipient = ActorPathToProto(entry.Recipient), Payload = MessageToProto(entry.Message), TriggerDate = entry.TriggerDateUtc.Ticks }; if (entry.RepeatInterval.HasValue) { proto.RepeatInterval = entry.RepeatInterval.Value.Ticks; } return(proto); }
private Proto.ReminderEntry EntryToProto(Reminder.Schedule schedule) { var proto = new Proto.ReminderEntry { TaskId = schedule.TaskId, Recipient = ActorPathToProto(schedule.Recipient), Payload = MessageToProto(schedule.Message), TriggerDate = schedule.TriggerDateUtc.Ticks }; switch (schedule) { case Reminder.ScheduleRepeatedly repeat: proto.RepeatInterval = repeat.RepeatInterval.Ticks; break; case Reminder.ScheduleCron cron: proto.CronExpression = cron.CronExpression; break; } return(proto); }