validateIntegrity method

  1. @override
VerificationContext validateIntegrity(
  1. Insertable<Score> instance, {
  2. bool isInserting = false,
})
override

Validates that the given entity can be inserted into this table, meaning that it respects all constraints (nullability, text length, etc.).

Implementation

@override
VerificationContext validateIntegrity(
  Insertable<Score> instance, {
  bool isInserting = false,
}) {
  final context = VerificationContext();
  final data = instance.toColumns(true);
  if (data.containsKey('id')) {
    context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta));
  }
  if (data.containsKey('user')) {
    context.handle(
      _userMeta,
      user.isAcceptableOrUnknown(data['user']!, _userMeta),
    );
  } else if (isInserting) {
    context.missing(_userMeta);
  }
  if (data.containsKey('semester')) {
    context.handle(
      _semesterMeta,
      semester.isAcceptableOrUnknown(data['semester']!, _semesterMeta),
    );
  } else if (isInserting) {
    context.missing(_semesterMeta);
  }
  if (data.containsKey('course')) {
    context.handle(
      _courseMeta,
      course.isAcceptableOrUnknown(data['course']!, _courseMeta),
    );
  } else if (isInserting) {
    context.missing(_courseMeta);
  }
  if (data.containsKey('course_offering')) {
    context.handle(
      _courseOfferingMeta,
      courseOffering.isAcceptableOrUnknown(
        data['course_offering']!,
        _courseOfferingMeta,
      ),
    );
  }
  if (data.containsKey('score')) {
    context.handle(
      _scoreMeta,
      score.isAcceptableOrUnknown(data['score']!, _scoreMeta),
    );
  }
  return context;
}