validateIntegrity method

  1. @override
VerificationContext validateIntegrity(
  1. Insertable<StoredCheckpoint> 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<StoredCheckpoint> instance, {
  bool isInserting = false,
}) {
  final context = VerificationContext();
  final data = instance.toColumns(true);
  if (data.containsKey('account_key')) {
    context.handle(
      _accountKeyMeta,
      accountKey.isAcceptableOrUnknown(data['account_key']!, _accountKeyMeta),
    );
  } else if (isInserting) {
    context.missing(_accountKeyMeta);
  }
  if (data.containsKey('subscription_id')) {
    context.handle(
      _subscriptionIdMeta,
      subscriptionId.isAcceptableOrUnknown(
        data['subscription_id']!,
        _subscriptionIdMeta,
      ),
    );
  } else if (isInserting) {
    context.missing(_subscriptionIdMeta);
  }
  if (data.containsKey('seq')) {
    context.handle(
      _seqMeta,
      seq.isAcceptableOrUnknown(data['seq']!, _seqMeta),
    );
  } else if (isInserting) {
    context.missing(_seqMeta);
  }
  if (data.containsKey('updated_at')) {
    context.handle(
      _updatedAtMeta,
      updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta),
    );
  } else if (isInserting) {
    context.missing(_updatedAtMeta);
  }
  return context;
}