validateIntegrity method

  1. @override
VerificationContext validateIntegrity(
  1. Insertable<MapSyncRecord> 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<MapSyncRecord> instance, {
  bool isInserting = false,
}) {
  final context = VerificationContext();
  final data = instance.toColumns(true);
  if (data.containsKey('namespace')) {
    context.handle(
      _namespaceMeta,
      namespace.isAcceptableOrUnknown(data['namespace']!, _namespaceMeta),
    );
  } else if (isInserting) {
    context.missing(_namespaceMeta);
  }
  if (data.containsKey('catalog_fetched_at')) {
    context.handle(
      _catalogFetchedAtMeta,
      catalogFetchedAt.isAcceptableOrUnknown(
        data['catalog_fetched_at']!,
        _catalogFetchedAtMeta,
      ),
    );
  }
  if (data.containsKey('index_fetched_at')) {
    context.handle(
      _indexFetchedAtMeta,
      indexFetchedAt.isAcceptableOrUnknown(
        data['index_fetched_at']!,
        _indexFetchedAtMeta,
      ),
    );
  }
  return context;
}