- protected setTaskStatistics (opts: WorkerChoiceStrategyOptions): void {
- if (
- this.taskStatisticsRequirements.avgRunTime &&
- opts.medRunTime === true
- ) {
- this.taskStatisticsRequirements.avgRunTime = false
- this.taskStatisticsRequirements.medRunTime = opts.medRunTime as boolean
- }
- if (
- this.taskStatisticsRequirements.medRunTime &&
- opts.medRunTime === false
- ) {
- this.taskStatisticsRequirements.avgRunTime = true
- this.taskStatisticsRequirements.medRunTime = opts.medRunTime as boolean
- }
- if (
- this.taskStatisticsRequirements.avgWaitTime &&
- opts.medWaitTime === true
- ) {
- this.taskStatisticsRequirements.avgWaitTime = false
- this.taskStatisticsRequirements.medWaitTime = opts.medWaitTime as boolean
+ protected setTaskStatisticsRequirements (
+ opts: InternalWorkerChoiceStrategyOptions
+ ): void {
+ this.toggleMedianMeasurementStatisticsRequirements(
+ this.taskStatisticsRequirements.runTime,
+ opts.runTime?.median as boolean
+ )
+ this.toggleMedianMeasurementStatisticsRequirements(
+ this.taskStatisticsRequirements.waitTime,
+ opts.waitTime?.median as boolean
+ )
+ this.toggleMedianMeasurementStatisticsRequirements(
+ this.taskStatisticsRequirements.elu,
+ opts.elu?.median as boolean
+ )
+ }
+
+ private toggleMedianMeasurementStatisticsRequirements (
+ measurementStatisticsRequirements: MeasurementStatisticsRequirements,
+ toggleMedian: boolean
+ ): void {
+ if (measurementStatisticsRequirements.average && toggleMedian) {
+ measurementStatisticsRequirements.average = false
+ measurementStatisticsRequirements.median = toggleMedian