on method
Set up event handlers for database changes
Example
final subscription = await database.observe<User>('users')
.on('insert', (event) {
print('New users: ${event.rows}');
})
.on('update', (event) {
print('Updated users: ${event.rows}');
})
.on('delete', (event) {
print('Deleted user IDs: ${event.rowIds}');
})
.subscribe();
Implementation
DatabaseObserver<T> on(String event, dynamic handler) {
switch (event) {
case 'insert':
_insertHandler = handler as DatabaseInsertHandler<T>;
break;
case 'update':
_updateHandler = handler as DatabaseUpdateHandler<T>;
break;
case 'delete':
_deleteHandler = handler as DatabaseDeleteHandler;
break;
default:
throw ArgumentError('Unsupported event type: $event');
}
return this;
}