validateIntegrity method

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

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<Node> instance, {
  bool isInserting = false,
}) {
  final context = VerificationContext();
  final data = instance.toColumns(true);
  if (data.containsKey('node_id')) {
    context.handle(
      _nodeIdMeta,
      nodeId.isAcceptableOrUnknown(data['node_id']!, _nodeIdMeta),
    );
  } else if (isInserting) {
    context.missing(_nodeIdMeta);
  }
  if (data.containsKey('role')) {
    context.handle(
      _roleMeta,
      role.isAcceptableOrUnknown(data['role']!, _roleMeta),
    );
  }
  if (data.containsKey('group_id')) {
    context.handle(
      _groupIdMeta,
      groupId.isAcceptableOrUnknown(data['group_id']!, _groupIdMeta),
    );
  }
  if (data.containsKey('last_seen')) {
    context.handle(
      _lastSeenMeta,
      lastSeen.isAcceptableOrUnknown(data['last_seen']!, _lastSeenMeta),
    );
  } else if (isInserting) {
    context.missing(_lastSeenMeta);
  }
  if (data.containsKey('hop_count')) {
    context.handle(
      _hopCountMeta,
      hopCount.isAcceptableOrUnknown(data['hop_count']!, _hopCountMeta),
    );
  }
  if (data.containsKey('display_name')) {
    context.handle(
      _displayNameMeta,
      displayName.isAcceptableOrUnknown(
        data['display_name']!,
        _displayNameMeta,
      ),
    );
  }
  if (data.containsKey('battery_level')) {
    context.handle(
      _batteryLevelMeta,
      batteryLevel.isAcceptableOrUnknown(
        data['battery_level']!,
        _batteryLevelMeta,
      ),
    );
  }
  if (data.containsKey('has_internet_access')) {
    context.handle(
      _hasInternetAccessMeta,
      hasInternetAccess.isAcceptableOrUnknown(
        data['has_internet_access']!,
        _hasInternetAccessMeta,
      ),
    );
  }
  if (data.containsKey('metadata')) {
    context.handle(
      _metadataMeta,
      metadata.isAcceptableOrUnknown(data['metadata']!, _metadataMeta),
    );
  }
  return context;
}