Skip to content

SCHED_Base

Class · Group: Schedulables

apex
global abstract inherited sharing class SCHED_Base implements IF_Schedulable

Implements: IF_Schedulable

Known Derived Types: SCHED_ChainWatchdog, SCHED_DeactivateUsers, SCHED_PurgeRecords, IF_Schedulable.getParameterDefinitions(), IF_Schedulable.setParameterValues(DTO_NameValues)

Abstract base class for scheduled jobs that support configurable parameters. Implements IF_Schedulable, providing parameter storage, typed parameter resolution, and a default empty parameter definition list. Subscribers extend this class, override getParameterDefinitions() to declare their parameters, and implement execute(SchedulableContext) for job logic. When setParameterValues() is called by the framework, the base class resolves raw string values into typed values (String, Integer, Boolean) based on the DataType declared in getParameterDefinitions(), applying default values where configured. Subclasses read typed values via getTextParameter(), getNumericParameter(), and getBooleanParameter().

Example

apex
global class SCHED_MyJob extends SCHED_Base
{
    public override List<DTO_ScheduledParameterDefinition> getParameterDefinitions()
    {
        return new List<DTO_ScheduledParameterDefinition>
        {
            DTO_ScheduledParameterDefinition.of('objectName').required(),
            DTO_ScheduledParameterDefinition.of('batchSize').asNumeric().withDefault('2000')
        };
    }
    public void execute(SchedulableContext context)
    {
        String objectName = getTextParameter('objectName');
        Integer batchSize = getNumericParameter('batchSize');
    }
}

See Also: DTO_NameValues, DTO_ScheduledParameterDefinition, IF_Schedulable


Methods

MethodDescription
global Boolean getBooleanParameter(String name)Returns a FLAG (boolean) parameter value.
global Integer getNumericParameter(String name)Returns a NUMERIC parameter value.
global virtual List<DTO_ScheduledParameterDefinition> getParameterDefinitions()Returns the parameter definitions supported by this scheduled job.
global String getTextParameter(String name)Returns a TEXT parameter value.
global void setParameterValues(DTO_NameValues parameterValues)Stores the provided parameter values.

getBooleanParameter

apex
global Boolean getBooleanParameter(String name)

Returns a FLAG (boolean) parameter value.

Parameters

ParameterTypeDescription
nameStringThe parameter name.

Returns Boolean — The boolean value, defaulting to false if not set.

getNumericParameter

apex
global Integer getNumericParameter(String name)

Returns a NUMERIC parameter value.

Parameters

ParameterTypeDescription
nameStringThe parameter name.

Returns Integer — The integer value, or null if not set or not numeric.

getParameterDefinitions

apex
global virtual List<DTO_ScheduledParameterDefinition> getParameterDefinitions()

Returns the parameter definitions supported by this scheduled job. Override in subclasses to declare parameters for dynamic form rendering. Returns an empty list by default.

Returns DTO_ScheduledParameterDefinition — List of parameter definitions.

Example

apex
public override List<DTO_ScheduledParameterDefinition> getParameterDefinitions()
{
    return new List<DTO_ScheduledParameterDefinition>
    {
        DTO_ScheduledParameterDefinition.of('batchSize').asNumeric()
            .withDefault('2000')
    };
}

getTextParameter

apex
global String getTextParameter(String name)

Returns a TEXT parameter value.

Parameters

ParameterTypeDescription
nameStringThe parameter name.

Returns String — The string value, or null if not set.

setParameterValues

apex
global void setParameterValues(DTO_NameValues parameterValues)

Stores the provided parameter values. The property setter automatically resolves raw values into typed parameters.

Parameters

ParameterTypeDescription
parameterValuesDTO_NameValuesThe name-value pairs containing the resolved parameter values.