Skip to main content

TaskSchedulerTrait

Trait TaskSchedulerTrait 

Source
pub trait TaskSchedulerTrait: DataObjectTrait {
    // Required methods
    fn get_task_scheduler(&self) -> &TaskScheduler;
    fn get_task_scheduler_mut(&mut self) -> &mut TaskScheduler;
}
Expand description

The TaskScheduler data object is the base type for the scheduler objects.

The hierarchy of scheduler objects is as follows:

    TaskScheduler
        *AfterStartupTaskScheduler*
        *OnceTaskScheduler*
        *RecurrentTaskScheduler*
            *HourlyTaskScheduler*
                *DailyTaskScheduler*
                    *WeeklyTaskScheduler*
                    *MonthlyTaskScheduler*
                        *MonthlyByDayTaskScheduler*
                        *MonthlyByWeekdayTaskScheduler*

Use a scheduler object to set the time(s) for task execution. You can use two scheduling modes - single execution or recurring execution:

  • Use the AfterStartupTaskScheduler or the OnceTaskScheduler to schedule a single instance of task execution.
  • Use one of the recurrent task schedulers to schedule hourly, daily, weekly, or monthly task execution.

After you have established the task timing, use the scheduler object for the ScheduledTaskSpec ScheduledTaskSpec.scheduler property value.

§How to access

  • ScheduledTask::reconfigure_scheduled_task(spec).scheduler
  • ScheduledTaskManager::create_scheduled_task(spec).scheduler
  • ScheduledTaskManager::create_object_scheduled_task(spec).scheduler

Required Methods§

Source

fn get_task_scheduler(&self) -> &TaskScheduler

Get a reference to the TaskScheduler parent struct

Source

fn get_task_scheduler_mut(&mut self) -> &mut TaskScheduler

Get a mutable reference to the TaskScheduler parent struct

Trait Implementations§

Source§

impl<From: VimObjectTrait + ?Sized + 'static> CastFrom<From> for dyn TaskSchedulerTrait

Source§

fn from_ref<'a>(from: &'a From) -> Option<&'a Self>

Casts a reference to a trait object. If the cast fails, std::option::Option::None is returned.
Source§

fn from_box(from: Box<From>) -> Result<Box<Self>, Box<dyn Any + 'static>>

Casts a boxed trait object to another trait object. If the cast fails, the original boxed trait object is returned in std::result::Result::Err.
Source§

impl Deref for dyn TaskSchedulerTrait

Source§

type Target = TaskScheduler

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl DerefMut for dyn TaskSchedulerTrait

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
Source§

impl Deserialize for Box<dyn TaskSchedulerTrait>

Source§

fn begin(out: &mut Option<Self>) -> &mut dyn Visitor

The only correct implementation of this method is: Read more

Implementors§