Function: Build VcTaskScheduler Classes

by Simon Sparks · 20 December 2025

To use this function add it to the class library file named vCenterServerService.ts

GitHub Repository: https://github.com/SimonSparksUK/Orchestrator

Filename: vCenterServerService.ts

Description: Orchestrator Function to build VcTaskScheduler classes.

Function: buildVcOnceTaskScheduler

public buildVcOnceTaskScheduler(objDateRunAt: Date, objDateExpireTime: Date, objDateActiveTime: Date): VcOnceTaskScheduler {

    let objVcOnceTaskScheduler: VcOnceTaskScheduler = new VcOnceTaskScheduler();
    objVcOnceTaskScheduler.runAt = objDateRunAt;
    objVcOnceTaskScheduler.expireTime = objDateExpireTime;
    objVcOnceTaskScheduler.activeTime = objDateActiveTime;

    return objVcOnceTaskScheduler;
}

Function: buildVcRecurrentTaskScheduler

public buildVcRecurrentTaskScheduler(intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcRecurrentTaskScheduler {

	let objVcRecurrentTaskScheduler: VcRecurrentTaskScheduler = new VcRecurrentTaskScheduler();
	objVcRecurrentTaskScheduler.expireTime = objDateExpireTime;
	objVcRecurrentTaskScheduler.activeTime = objDateActiveTime;
	objVcRecurrentTaskScheduler.interval = intInterval;

	return objVcRecurrentTaskScheduler;
}

Function: buildVcHourlyTaskScheduler

public buildVcHourlyTaskScheduler(intMinute: number, intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcHourlyTaskScheduler {

	let objVcHourlyTaskScheduler: VcHourlyTaskScheduler = new VcHourlyTaskScheduler();
	objVcHourlyTaskScheduler.expireTime = objDateExpireTime;
	objVcHourlyTaskScheduler.activeTime = objDateActiveTime;
	objVcHourlyTaskScheduler.interval = intInterval;
	objVcHourlyTaskScheduler.minute = intMinute;

	return objVcHourlyTaskScheduler;
}

Function: buildVcDailyTaskScheduler

public buildVcDailyTaskScheduler(intHour: number, intMinute: number, intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcDailyTaskScheduler {

	let objVcDailyTaskScheduler: VcDailyTaskScheduler = new VcDailyTaskScheduler();
	objVcDailyTaskScheduler.expireTime = objDateExpireTime;
	objVcDailyTaskScheduler.activeTime = objDateActiveTime;
	objVcDailyTaskScheduler.interval = intInterval;
	objVcDailyTaskScheduler.minute = intMinute;
	objVcDailyTaskScheduler.hour = intHour;

	return objVcDailyTaskScheduler;
}

Function: buildVcWeeklyTaskScheduler

public buildVcWeeklyTaskScheduler(blnMonday: boolean, blnTuesday: boolean, blnWednesday: boolean, blnThursday: boolean, blnFriday: boolean, blnSaturday: boolean, blnSunday: boolean, intHour: number, intMinute: number, intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcWeeklyTaskScheduler {

	let objVcWeeklyTaskScheduler: VcWeeklyTaskScheduler = new VcWeeklyTaskScheduler();
	objVcWeeklyTaskScheduler.expireTime = objDateExpireTime;
	objVcWeeklyTaskScheduler.activeTime = objDateActiveTime;
	objVcWeeklyTaskScheduler.interval = intInterval;
	objVcWeeklyTaskScheduler.minute = intMinute;
	objVcWeeklyTaskScheduler.hour = intHour;
	objVcWeeklyTaskScheduler.monday = blnMonday;
	objVcWeeklyTaskScheduler.tuesday = blnTuesday;
	objVcWeeklyTaskScheduler.wednesday = blnWednesday;
	objVcWeeklyTaskScheduler.thursday = blnThursday;
	objVcWeeklyTaskScheduler.friday = blnFriday;
	objVcWeeklyTaskScheduler.saturday = blnSaturday;
	objVcWeeklyTaskScheduler.sunday = blnSunday;

	return objVcWeeklyTaskScheduler;
}

Function: buildVcMonthlyTaskScheduler

public buildVcMonthlyTaskScheduler(intHour: number, intMinute: number, intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcMonthlyTaskScheduler {

	let objVcMonthlyTaskScheduler: VcMonthlyTaskScheduler = new VcMonthlyTaskScheduler();
	objVcMonthlyTaskScheduler.expireTime = objDateExpireTime;
	objVcMonthlyTaskScheduler.activeTime = objDateActiveTime;
	objVcMonthlyTaskScheduler.interval = intInterval;
	objVcMonthlyTaskScheduler.minute = intMinute;
	objVcMonthlyTaskScheduler.hour = intHour;

	return objVcMonthlyTaskScheduler;
}

Function: buildVcMonthlyByDayTaskScheduler

public buildVcMonthlyByDayTaskScheduler(intDay: number, intHour: number, intMinute: number, intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcMonthlyByDayTaskScheduler {

	let objVcMonthlyByDayTaskScheduler: VcMonthlyByDayTaskScheduler = new VcMonthlyByDayTaskScheduler();
	objVcMonthlyByDayTaskScheduler.expireTime = objDateExpireTime;
	objVcMonthlyByDayTaskScheduler.activeTime = objDateActiveTime;
	objVcMonthlyByDayTaskScheduler.interval = intInterval;
	objVcMonthlyByDayTaskScheduler.minute = intMinute;
	objVcMonthlyByDayTaskScheduler.hour = intHour;
	objVcMonthlyByDayTaskScheduler.day = intDay;

	return objVcMonthlyByDayTaskScheduler;
}

Function: buildVcMonthlyByWeekdayTaskScheduler

public buildVcMonthlyByWeekdayTaskScheduler(strVcWeekOfMonth: "first" | "second" | "third" | "fourth" | "first" | "last", strVcDayOfWeek: "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday", intHour: number, intMinute: number, intInterval: number, objDateExpireTime: Date, objDateActiveTime: Date): VcMonthlyByWeekdayTaskScheduler {

	let objVcMonthlyByWeekdayTaskScheduler: VcMonthlyByWeekdayTaskScheduler = new VcMonthlyByWeekdayTaskScheduler();
	objVcMonthlyByWeekdayTaskScheduler.expireTime = objDateExpireTime;
	objVcMonthlyByWeekdayTaskScheduler.activeTime = objDateActiveTime;
	objVcMonthlyByWeekdayTaskScheduler.interval = intInterval;
	objVcMonthlyByWeekdayTaskScheduler.minute = intMinute;
	objVcMonthlyByWeekdayTaskScheduler.hour = intHour;
	objVcMonthlyByWeekdayTaskScheduler.offset = VcWeekOfMonth[strVcWeekOfMonth];
	objVcMonthlyByWeekdayTaskScheduler.weekday = VcDayOfWeek[strVcDayOfWeek];

	return objVcMonthlyByWeekdayTaskScheduler;
}

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like