validateIntegrity method

  1. @override
VerificationContext validateIntegrity(
  1. Insertable<Teacher> 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<Teacher> 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('fetched_at')) {
    context.handle(
      _fetchedAtMeta,
      fetchedAt.isAcceptableOrUnknown(data['fetched_at']!, _fetchedAtMeta),
    );
  }
  if (data.containsKey('code')) {
    context.handle(
      _codeMeta,
      code.isAcceptableOrUnknown(data['code']!, _codeMeta),
    );
  } else if (isInserting) {
    context.missing(_codeMeta);
  }
  if (data.containsKey('semester')) {
    context.handle(
      _semesterMeta,
      semester.isAcceptableOrUnknown(data['semester']!, _semesterMeta),
    );
  } else if (isInserting) {
    context.missing(_semesterMeta);
  }
  if (data.containsKey('name_zh')) {
    context.handle(
      _nameZhMeta,
      nameZh.isAcceptableOrUnknown(data['name_zh']!, _nameZhMeta),
    );
  } else if (isInserting) {
    context.missing(_nameZhMeta);
  }
  if (data.containsKey('name_en')) {
    context.handle(
      _nameEnMeta,
      nameEn.isAcceptableOrUnknown(data['name_en']!, _nameEnMeta),
    );
  }
  if (data.containsKey('email')) {
    context.handle(
      _emailMeta,
      email.isAcceptableOrUnknown(data['email']!, _emailMeta),
    );
  }
  if (data.containsKey('department')) {
    context.handle(
      _departmentMeta,
      department.isAcceptableOrUnknown(data['department']!, _departmentMeta),
    );
  }
  if (data.containsKey('title')) {
    context.handle(
      _titleMeta,
      title.isAcceptableOrUnknown(data['title']!, _titleMeta),
    );
  }
  if (data.containsKey('teaching_hours')) {
    context.handle(
      _teachingHoursMeta,
      teachingHours.isAcceptableOrUnknown(
        data['teaching_hours']!,
        _teachingHoursMeta,
      ),
    );
  }
  if (data.containsKey('office_hours_note')) {
    context.handle(
      _officeHoursNoteMeta,
      officeHoursNote.isAcceptableOrUnknown(
        data['office_hours_note']!,
        _officeHoursNoteMeta,
      ),
    );
  }
  return context;
}