validateIntegrity method

  1. @override
VerificationContext validateIntegrity(
  1. Insertable<Course> 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<Course> 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('credits')) {
    context.handle(
      _creditsMeta,
      credits.isAcceptableOrUnknown(data['credits']!, _creditsMeta),
    );
  } else if (isInserting) {
    context.missing(_creditsMeta);
  }
  if (data.containsKey('hours')) {
    context.handle(
      _hoursMeta,
      hours.isAcceptableOrUnknown(data['hours']!, _hoursMeta),
    );
  } else if (isInserting) {
    context.missing(_hoursMeta);
  }
  if (data.containsKey('name_en')) {
    context.handle(
      _nameEnMeta,
      nameEn.isAcceptableOrUnknown(data['name_en']!, _nameEnMeta),
    );
  }
  if (data.containsKey('name_zh')) {
    context.handle(
      _nameZhMeta,
      nameZh.isAcceptableOrUnknown(data['name_zh']!, _nameZhMeta),
    );
  }
  if (data.containsKey('description_en')) {
    context.handle(
      _descriptionEnMeta,
      descriptionEn.isAcceptableOrUnknown(
        data['description_en']!,
        _descriptionEnMeta,
      ),
    );
  }
  if (data.containsKey('description_zh')) {
    context.handle(
      _descriptionZhMeta,
      descriptionZh.isAcceptableOrUnknown(
        data['description_zh']!,
        _descriptionZhMeta,
      ),
    );
  }
  return context;
}