write method

  1. @override
Future<void> write(
  1. String sessionId,
  2. Map<String, dynamic> data
)
override

Store session data

Implementation

@override
Future<void> write(String sessionId, Map<String, dynamic> data) async {
  final payload =
      data.toString(); // Simplified - should use proper JSON encoding
  final lastActivity =
      data['last_activity'] ?? DateTime.now().toIso8601String();

  final queryBuilder =
      _connection.queryBuilder<Map<String, dynamic>>(_tableName);

  // Check if session exists
  final exists =
      await queryBuilder.where('session_id', '=', sessionId).exists();

  if (exists) {
    // Update existing session
    await queryBuilder.where('session_id', '=', sessionId).update({
      'payload': payload,
      'last_activity': lastActivity,
    });
  } else {
    // Insert new session
    await queryBuilder.insert({
      'session_id': sessionId,
      'payload': payload,
      'last_activity': lastActivity,
    });
  }
}