static Task Schedule(IMessageSession session, TaskDefinition taskDefinition)
{
logger.DebugFormat("Task '{0}' (with id {1}) scheduled with timeSpan {2}", taskDefinition.Name, taskDefinition.Id, taskDefinition.Every);
var options = new SendOptions();
options.DelayDeliveryWith(taskDefinition.Every);
options.RouteToThisEndpoint();
options.Context.GetOrCreate<ScheduleBehavior.State>().TaskDefinition = taskDefinition;
var scheduledTask = new ScheduledTask
{
TaskId = taskDefinition.Id,
Name = taskDefinition.Name,
Every = taskDefinition.Every
};
return session.Send(scheduledTask, options);
}