Class JobBase
public abstract class JobBase : BackgroundService, IHostedService, IDisposable
- Inheritance
-
JobBase
- Implements
- Derived
- Inherited Members
Constructors
JobBase(IServiceScopeFactory, ILogger, PermissionSet)
public JobBase(IServiceScopeFactory scopeFactory, ILogger logger, PermissionSet permissions)
Parameters
scopeFactoryIServiceScopeFactoryloggerILoggerpermissionsPermissionSet
JobBase(JobParameters)
public JobBase(JobParameters parameters)
Parameters
parametersJobParameters
Properties
CanExecute
public virtual bool CanExecute { get; }
Property Value
IsJobRunRecordingEnabled
public bool IsJobRunRecordingEnabled { get; set; }
Property Value
JobRunProgressUpdateInterval
public TimeSpan JobRunProgressUpdateInterval { get; set; }
Property Value
Logger
protected ILogger Logger { get; }
Property Value
Name
public virtual string Name { get; }
Property Value
RunStatus
public CurrentStatus RunStatus { get; }
Property Value
RunningSince
public DateTime? RunningSince { get; }
Property Value
RunningUntil
public Task RunningUntil { get; }
Property Value
Methods
CancelRun()
public void CancelRun()
DescribeJobParameters()
Creates a debug view of the data on which the job is currently operating.
protected virtual string DescribeJobParameters()
Returns
ExecuteJobAsync(IServices, IPrincipal, IProgress<Status>, CancellationToken)
Implements the actual job logic.
protected abstract Task ExecuteJobAsync(IServices services, IPrincipal principal, IProgress<Status> progress, CancellationToken cancellationToken)
Parameters
servicesIServicesprincipalIPrincipalprogressIProgress<Status>cancellationTokenCancellationToken
Returns
ExecuteOnceAsync(IProgress<Status>, CancellationToken)
Run the job, recording results to an IProgress.
public Task ExecuteOnceAsync(IProgress<Status> progress, CancellationToken cancellationToken)
Parameters
progressIProgress<Status>cancellationTokenCancellationToken
Returns
ExecuteOnceAsync(IProgress<Status>, IPrincipal?, CancellationToken)
Run the job, recording results to an IProgress.
public Task ExecuteOnceAsync(IProgress<Status> progress, IPrincipal? user, CancellationToken cancellationToken)
Parameters
progressIProgress<Status>userIPrincipalcancellationTokenCancellationToken
Returns
ExecuteOnceAsync(CancellationToken)
Run the job, recording results to a JobRun if enabled.
public Task ExecuteOnceAsync(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
Returns
ExecuteOnceAsync(IPrincipal, CancellationToken)
Run the job, recording results to a JobRun if enabled.
public Task ExecuteOnceAsync(IPrincipal asUser, CancellationToken cancellationToken)
Parameters
asUserIPrincipalcancellationTokenCancellationToken
Returns
ExecuteOnceAsync(Identity, CancellationToken)
Run the job, recording results to a JobRun if enabled.
public Task ExecuteOnceAsync(Identity startedBy, CancellationToken cancellationToken)
Parameters
startedByIdentitycancellationTokenCancellationToken
Returns
ExecuteOnceAsync(Identity?, IPrincipal?, CancellationToken)
Run the job, recording results to a JobRun if enabled.
public Task ExecuteOnceAsync(Identity? startedBy, IPrincipal? asUser, CancellationToken cancellationToken)
Parameters
startedByIdentityasUserIPrincipalcancellationTokenCancellationToken