# Class CheckOpiateBolusesJob

Namespace
  adas_core.Application.Services

Assembly
  adas-core.Application.dll

Represents a scheduled job that checks opiate boluses, implementing the Quartz.IJob interface.

    [DisallowConcurrentExecution]
    public class CheckOpiateBolusesJob : IJob

Inheritance
  object
  CheckOpiateBolusesJob

Implements
  IJob

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

Extension Methods
  NumberUtils.IsNumber(object)
  NumberUtils.ToDouble(object)
  ObjectUtils.ToStr(object?)

## Remarks

The `DisallowConcurrentExecution` attribute ensures that overlapping executions of this job are prevented, guaranteeing that only one instance runs at a time.

## Properties

### CalculatedObservationsService

    public static ICalculatedObservationsService CalculatedObservationsService { get; set; }

#### Property Value

ICalculatedObservationsService

### PatientService

    public static IPatientService PatientService { get; set; }

#### Property Value

IPatientService

## Methods

### Execute(IJobExecutionContext)

Executes a scheduled job that calculates opiate bolus observations for all patients. Retrieves every patient via the patient service and triggers the bolus opiates calculation for each one, logging any errors that occur and reporting the total execution time upon completion.

    public Task Execute(IJobExecutionContext context)

#### Parameters

`context` IJobExecutionContext

  The Quartz job execution context provided by the scheduler for this job run.

#### Returns

Task