-
Notifications
You must be signed in to change notification settings - Fork 299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
X-FHIR-Query support for variable extension #2076
X-FHIR-Query support for variable extension #2076
Conversation
…hir-query-support-for-variable
I am reviewing it, thanks! |
…hir-query-support-for-variable
@santosh-pingle @jingtang10 I am anticipating merge conflicts from #2066, so I pulled from there and integrate it in this PR. And I would like to ensure that @MJ1998's contribution is duly noted from #2066. |
datacapture/src/main/java/com/google/android/fhir/datacapture/QuestionnaireViewModel.kt
Outdated
Show resolved
Hide resolved
datacapture/src/main/java/com/google/android/fhir/datacapture/QuestionnaireViewModel.kt
Outdated
Show resolved
Hide resolved
- Use viewModelScope for calculated-expression - Move the runBlocking to QuestionnaireItemViewItem for cqf-expression - Rename questionnaireVariablesMap to questionnaireVariableMap
Notifies the flow which will update the data stream when updateDependentQuestionnaireResponseItems finished running
fbdedc3
to
c8f8165
Compare
- updateDependentQuestionnaireResponseItems can evaluate X-FHIR-Query expression which can delay the update of UI for 1-2 seconds depending on the retrieved resource size. - In the case of clicking next page after selecting an answer that shows the next pages based on skip logic (tapping this and that very quickly). We notify the UI pages immediately, then once the X-FHIR-Query expression is processed (1-2 seconds), we notify the UI again. Without this changes, when the user taps next page, the next pages that is supposed to be shown by skip logic will be shown late enough that the user don't see it, but if the user taps previous page button, user will see the shown pages decided by skip logic. And that looks like a bug.
c8f8165
to
9d33869
Compare
- X-FHIR-Query support for variable extension PR google#2076 - Optimize flatten and descendent traversal PR google#2079
- With unmerged PR google#2032 - With unmerged PR #1 - With unmerged PR google#1669 - With unmerged PR google#2132 - With unmerged PR #9 - With unmerged PR google#2076 - With unmerged PR #10
- With unmerged PR google#2032 - With unmerged PR #1 - With unmerged PR google#1669 - With unmerged PR google#2132 - With unmerged PR #9 - With unmerged PR google#2076 - With unmerged PR #10
- With unmerged PR google#2032 - With unmerged PR #1 - With unmerged PR google#1669 - With unmerged PR google#2132 - With unmerged PR #9 - With unmerged PR google#2076 - With unmerged PR #10
Todo:
|
7c8a5c2
to
a277d01
Compare
@MJ1998 @omarismail94 this is ready for review |
Thanks @FikriMilano A few requests as this is difficult to follow:-
|
hold up, let me try to use _count, and see whether it can prevent the resolver to search everything, when there are no parameter values supplied |
Better alternative is to limit the received resource by using the _count common parameter. Example: Patient?name=&_count=2
…hir-query-support-for-variable
ok, we don't need the hasMissingParamValue. Patient?name=&_count=2 |
@MJ1998 @omarismail94 |
@FikriMilano can you create an issue here? |
...capture/src/test/java/com/google/android/fhir/datacapture/views/QuestionnaireViewItemTest.kt
Outdated
Show resolved
Hide resolved
...src/androidTest/java/com/google/android/fhir/datacapture/test/QuestionnaireUiEspressoTest.kt
Outdated
Show resolved
Hide resolved
...apture/src/test/java/com/google/android/fhir/datacapture/fhirpath/ExpressionEvaluatorTest.kt
Show resolved
Hide resolved
...apture/src/test/java/com/google/android/fhir/datacapture/fhirpath/ExpressionEvaluatorTest.kt
Show resolved
Hide resolved
…hir-query-support-for-variable
here's the ticket #2451 |
@jingtang10 this PR is ready to merge |
IMPORTANT: All PRs must be linked to an issue (except for extremely trivial and straightforward changes).
Fixes #2075
Description
Alternative(s) considered
N/A
Type
Feature
Screenshots (if applicable)
Checklist
./gradlew spotlessApply
and./gradlew spotlessCheck
to check my code follows the style guide of this project../gradlew check
and./gradlew connectedCheck
to test my changes locally.