diff --git a/engine/src/main/java/com/google/android/fhir/FhirEngine.kt b/engine/src/main/java/com/google/android/fhir/FhirEngine.kt index bb4dfb0241..0b5f111b8d 100644 --- a/engine/src/main/java/com/google/android/fhir/FhirEngine.kt +++ b/engine/src/main/java/com/google/android/fhir/FhirEngine.kt @@ -174,6 +174,8 @@ interface FhirEngine { */ suspend fun getLocalChanges(type: ResourceType, id: String): List + suspend fun getUnsyncedLocalChanges(): List + /** * Purges a resource from the database without deleting data from the server. * diff --git a/engine/src/main/java/com/google/android/fhir/impl/FhirEngineImpl.kt b/engine/src/main/java/com/google/android/fhir/impl/FhirEngineImpl.kt index fe5331bd73..284359436e 100644 --- a/engine/src/main/java/com/google/android/fhir/impl/FhirEngineImpl.kt +++ b/engine/src/main/java/com/google/android/fhir/impl/FhirEngineImpl.kt @@ -73,6 +73,8 @@ internal class FhirEngineImpl(private val database: Database, private val contex override suspend fun getLocalChanges(type: ResourceType, id: String) = withContext(Dispatchers.IO) { database.getLocalChanges(type, id) } + override suspend fun getUnsyncedLocalChanges(): List = database.getAllLocalChanges() + override suspend fun purge(type: ResourceType, id: String, forcePurge: Boolean) = withContext(Dispatchers.IO) { database.purge(type, setOf(id), forcePurge) } diff --git a/engine/src/main/java/com/google/android/fhir/testing/Utilities.kt b/engine/src/main/java/com/google/android/fhir/testing/Utilities.kt index c99e17be73..00c0060468 100644 --- a/engine/src/main/java/com/google/android/fhir/testing/Utilities.kt +++ b/engine/src/main/java/com/google/android/fhir/testing/Utilities.kt @@ -199,6 +199,8 @@ internal object TestFhirEngineImpl : FhirEngine { ) } + override suspend fun getUnsyncedLocalChanges(): List = listOf() + override suspend fun purge(type: ResourceType, id: String, forcePurge: Boolean) {} override suspend fun purge(type: ResourceType, ids: Set, forcePurge: Boolean) {}