CockpitRunCaseResource constructor

CockpitRunCaseResource({
  1. required String runId,
  2. required String caseId,
  3. required String sourceSha256,
  4. required Iterable<String> attemptIds,
  5. CockpitRunOutcome? outcome,
  6. CockpitRunStability? stability,
})

Creates a CockpitRunCaseResource.

Implementation

CockpitRunCaseResource({
  required this.runId,
  required this.caseId,
  required this.sourceSha256,
  required Iterable<String> attemptIds,
  this.outcome,
  this.stability,
}) : attemptIds = List<String>.unmodifiable(attemptIds) {
  CockpitFoundationValueReader.id(runId, r'$.runId');
  CockpitFoundationValueReader.id(caseId, r'$.caseId');
  CockpitFoundationValueReader.sha256(sourceSha256, r'$.sourceSha256');
  CockpitFoundationValueReader.ids(this.attemptIds, r'$.attemptIds');
  if ((outcome == null) != (stability == null)) {
    throw const FormatException('Run case outcome and stability disagree.');
  }
}