Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import 'dart:async';
- import 'package:appwrite/appwrite.dart';
- import 'package:medify/src/features/doctor/model/doctor_model.dart';
- import 'package:medify/src/features/doctor/set_doctor/database/set_doctor_database.dart';
- abstract class SetDoctorInterface {
- Future<DoctorModel> createDoctorModel(DoctorModel value);
- Future<void> deleteDoctorModel(DoctorModel value);
- Future<DoctorModel> updateDoctorModel(DoctorModel value);
- RealtimeSubscription getDoctorModelRealtimeSubscription(
- String doctorDocumentId);
- DoctorModel? getDoctorModelFromRealtimeMsg(RealtimeMessage value);
- }
- class SetDoctorRepository implements SetDoctorInterface {
- final _setDoctorDatabase = SetDoctorDatabase();
- @override
- Future<DoctorModel> createDoctorModel(DoctorModel value) =>
- _setDoctorDatabase.addDoctorInDatabase(value);
- @override
- Future<bool> deleteDoctorModel(DoctorModel value) =>
- _setDoctorDatabase.deleteDoctorInDatabase(value);
- @override
- Future<DoctorModel> updateDoctorModel(DoctorModel value) =>
- _setDoctorDatabase.updateDoctorInDatabase(value);
- @override
- RealtimeSubscription getDoctorModelRealtimeSubscription(
- String doctorDocumentId) {
- return _setDoctorDatabase.getDoctorRealtimeSubscription(doctorDocumentId);
- }
- @override
- DoctorModel? getDoctorModelFromRealtimeMsg(RealtimeMessage value) {
- try {
- final doctorModel = DoctorModel.fromMap(value.payload);
- return doctorModel;
- } catch (_) {
- return null;
- }
- }
- Future<DoctorModel> getDoctorModelFromDb(String doctorDocumentId) async {
- return _setDoctorDatabase.getDoctorFromDb(doctorDocumentId);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment