From bb64875bad5512b1f3f9861885e6c07ad9c84bb8 Mon Sep 17 00:00:00 2001 From: tdpeuter Date: Sun, 14 May 2023 09:39:34 +0200 Subject: [PATCH] Add getUserDetails() --- .../studeez/domain/implementation/FirebaseUserDAO.kt | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/be/ugent/sel/studeez/domain/implementation/FirebaseUserDAO.kt b/app/src/main/java/be/ugent/sel/studeez/domain/implementation/FirebaseUserDAO.kt index df592fe..8c84914 100644 --- a/app/src/main/java/be/ugent/sel/studeez/domain/implementation/FirebaseUserDAO.kt +++ b/app/src/main/java/be/ugent/sel/studeez/domain/implementation/FirebaseUserDAO.kt @@ -9,6 +9,7 @@ import com.google.firebase.firestore.DocumentReference import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.ktx.snapshots import kotlinx.coroutines.flow.Flow +import kotlinx.coroutines.flow.flow import kotlinx.coroutines.flow.map import kotlinx.coroutines.tasks.await import javax.inject.Inject @@ -41,7 +42,15 @@ class FirebaseUserDAO @Inject constructor( } override fun getUserDetails(userId: String): Flow { - TODO("Not yet implemented") + return flow { + val snapshot = firestore + .collection(FirebaseCollections.USER_COLLECTION) + .document(userId) + .get() + .await() + val user = snapshot.toObject(User::class.java)!! + emit(user) + } } override suspend fun getLoggedInUser(): User {