Skip to content

Commit 12bc83b

Browse files
committed
refactor: optimize updateSchedule logic to improve stream handling
1 parent 8fecc57 commit 12bc83b

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

lib/data/repositories/schedule_repository_impl.dart

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,11 @@ class ScheduleRepositoryImpl implements ScheduleRepository {
8181
Future<void> updateSchedule(ScheduleEntity schedule) async {
8282
try {
8383
await scheduleRemoteDataSource.updateSchedule(schedule);
84-
_scheduleStreamController.add(Set.from(_scheduleStreamController.value)
85-
..remove(schedule)
86-
..add(schedule));
84+
final newSchedules =
85+
Set<ScheduleEntity>.from(_scheduleStreamController.value);
86+
newSchedules.removeWhere((s) => s.id == schedule.id);
87+
newSchedules.add(schedule);
88+
_scheduleStreamController.add(newSchedules);
8789
//await scheduleLocalDataSource.updateSchedule(schedule);
8890
} catch (e) {
8991
rethrow;

0 commit comments

Comments
 (0)