Guest User

SetDoctorRepository

a guest
Oct 10th, 2023
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Dart 1.67 KB | None | 0 0
  1. import 'dart:async';
  2. import 'package:appwrite/appwrite.dart';
  3. import 'package:medify/src/features/doctor/model/doctor_model.dart';
  4. import 'package:medify/src/features/doctor/set_doctor/database/set_doctor_database.dart';
  5.  
  6. abstract class SetDoctorInterface {
  7.   Future<DoctorModel> createDoctorModel(DoctorModel value);
  8.  
  9.   Future<void> deleteDoctorModel(DoctorModel value);
  10.  
  11.   Future<DoctorModel> updateDoctorModel(DoctorModel value);
  12.  
  13.   RealtimeSubscription getDoctorModelRealtimeSubscription(
  14.       String doctorDocumentId);
  15.  
  16.   DoctorModel? getDoctorModelFromRealtimeMsg(RealtimeMessage value);
  17. }
  18.  
  19. class SetDoctorRepository implements SetDoctorInterface {
  20.   final _setDoctorDatabase = SetDoctorDatabase();
  21.  
  22.   @override
  23.   Future<DoctorModel> createDoctorModel(DoctorModel value) =>
  24.       _setDoctorDatabase.addDoctorInDatabase(value);
  25.  
  26.   @override
  27.   Future<bool> deleteDoctorModel(DoctorModel value) =>
  28.       _setDoctorDatabase.deleteDoctorInDatabase(value);
  29.  
  30.   @override
  31.   Future<DoctorModel> updateDoctorModel(DoctorModel value) =>
  32.       _setDoctorDatabase.updateDoctorInDatabase(value);
  33.  
  34.   @override
  35.   RealtimeSubscription getDoctorModelRealtimeSubscription(
  36.       String doctorDocumentId) {
  37.     return _setDoctorDatabase.getDoctorRealtimeSubscription(doctorDocumentId);
  38.   }
  39.  
  40.   @override
  41.   DoctorModel? getDoctorModelFromRealtimeMsg(RealtimeMessage value) {
  42.     try {
  43.       final doctorModel = DoctorModel.fromMap(value.payload);
  44.       return doctorModel;
  45.     } catch (_) {
  46.       return null;
  47.     }
  48.   }
  49.  
  50.   Future<DoctorModel> getDoctorModelFromDb(String doctorDocumentId) async {
  51.     return _setDoctorDatabase.getDoctorFromDb(doctorDocumentId);
  52.   }
  53. }
  54.  
Advertisement
Add Comment
Please, Sign In to add comment