Skip to content

Commit 25d7858

Browse files
committed
Fetch items only when needed
1 parent d27d8dd commit 25d7858

4 files changed

Lines changed: 11 additions & 11 deletions

File tree

lib/public/views/Runs/Overview/RunsWithQcModel.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ export class RunsWithQcModel extends RunsOverviewModel {
7070
constructor(model) {
7171
super(model);
7272

73+
this._observablesQcFlagsSummaryDependsOn$ = null;
7374
this._mcReproducibleAsNotBad = false;
7475

7576
this._runDetectorsSelectionModel = new RunDetectorsSelectionModel();
@@ -131,7 +132,10 @@ export class RunsWithQcModel extends RunsOverviewModel {
131132
*/
132133
async load() {
133134
this._runDetectorsSelectionModel.reset();
134-
this._fetchQcSummary();
135+
// Only fetch QC summary manually if no observer is registered
136+
if (!this._observablesQcFlagsSummaryDependsOn$) {
137+
this._fetchQcSummary();
138+
}
135139
super.load();
136140
}
137141

@@ -171,14 +175,10 @@ export class RunsWithQcModel extends RunsOverviewModel {
171175
/**
172176
* Register observables data, which QC flags fetching operation success depends on
173177
*
174-
* @param {ObservableData<RemoteData>[]} observables observable data list
178+
* @param {ObservableData<RemoteData<Detector>>} detectors$ observable data which QC flags fetching operation success depends on
175179
*/
176-
registerObservablesQcSummaryDependsOn(observables) {
177-
this._observablesQcFlagsSummaryDependsOn$ = ObservableData
178-
.builder()
179-
.sources(observables)
180-
.apply((remoteDataList) => mergeRemoteData(remoteDataList))
181-
.build();
180+
registerObservablesQcSummaryDependsOn(detectors$) {
181+
this._observablesQcFlagsSummaryDependsOn$ = detectors$;
182182

183183
this._observablesQcFlagsSummaryDependsOn$
184184
.observe((observableData) => observableData.getCurrent().apply({ Success: () => this._fetchQcSummary() }));

lib/public/views/Runs/RunPerDataPass/RunsPerDataPassOverviewModel.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export class RunsPerDataPassOverviewModel extends FixedPdpBeamTypeRunsOverviewMo
5454
this._detectors$.bubbleTo(this);
5555
this.registerDetectorsNotBadFractionFilterModels(this._detectors$);
5656
this.registerDetectorsForQcFlagsDataExport(this._detectors$);
57-
this.registerObservablesQcSummaryDependsOn([this._detectors$]);
57+
this.registerObservablesQcSummaryDependsOn(this._detectors$);
5858

5959
this._markAsSkimmableRequestResult$ = new ObservableData(RemoteData.notAsked());
6060
this._markAsSkimmableRequestResult$.bubbleTo(this);

lib/public/views/Runs/RunPerPeriod/RunsPerLhcPeriodOverviewModel.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export class RunsPerLhcPeriodOverviewModel extends FixedPdpBeamTypeRunsOverviewM
5050
.build();
5151

5252
this.registerDetectorsForQcFlagsDataExport(this._syncDetectors$);
53-
this.registerObservablesQcSummaryDependsOn([this._syncDetectors$]);
53+
this.registerObservablesQcSummaryDependsOn(this._syncDetectors$);
5454

5555
this._syncDetectors$.bubbleTo(this);
5656
this._onlineDetectors$.bubbleTo(this);

lib/public/views/Runs/RunsPerSimulationPass/RunsPerSimulationPassOverviewModel.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export class RunsPerSimulationPassOverviewModel extends FixedPdpBeamTypeRunsOver
3131

3232
this._detectors$ = rctDetectorsProvider.qc$;
3333

34-
this.registerObservablesQcSummaryDependsOn([this._detectors$]);
34+
this.registerObservablesQcSummaryDependsOn(this._detectors$);
3535
this.registerDetectorsNotBadFractionFilterModels(this._detectors$);
3636
this.registerDetectorsForQcFlagsDataExport(this._detectors$);
3737

0 commit comments

Comments
 (0)