Skip to content
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

FM2-582: Add Support for Patching on Immunization Resource #513

Merged
merged 2 commits into from Jul 28, 2023

Conversation

mherman22
Copy link
Contributor

@mherman22 mherman22 commented Jul 20, 2023

Description of what I changed

Ensures support of patch operations on the Immunization resource

Issue I worked on

see https://issues.openmrs.org/browse/FM2-582

Checklist: I completed these to help reviewers :)

  • My IDE is configured to follow the code style of this project.

    No? Unsure? -> configure your IDE, format the code and add the changes with git add . && git commit --amend

  • I have added tests to cover my changes. (If you refactored
    existing code that was well tested you do not have to add tests)

    No? -> write tests and add them to this commit git add . && git commit --amend

  • I ran mvn clean package right before creating this pull request and
    added all formatting changes to my commit.

    No? -> execute above command

  • All new and existing tests passed.

    No? -> figure out why and add the fix to your commit. It is your responsibility to make sure your code works.

  • My pull request is based on the latest changes of the master branch.

    No? Unsure? -> execute command git pull --rebase upstream master

@codecov
Copy link

codecov bot commented Jul 20, 2023

Codecov Report

Patch coverage: 50.00% and project coverage change: +0.06% 🎉

Comparison is base (96bf779) 77.06% compared to head (437e863) 77.12%.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #513      +/-   ##
============================================
+ Coverage     77.06%   77.12%   +0.06%     
- Complexity     2673     2675       +2     
============================================
  Files           249      249              
  Lines          7480     7479       -1     
  Branches        912      909       -3     
============================================
+ Hits           5764     5768       +4     
+ Misses         1164     1163       -1     
+ Partials        552      548       -4     
Files Changed Coverage Δ
...openmrs/module/fhir2/api/impl/BaseFhirService.java 57.14% <0.00%> (-0.75%) ⬇️
...providers/r4/ImmunizationFhirResourceProvider.java 57.89% <0.00%> (-15.44%) ⬇️
...le/fhir2/api/impl/FhirImmunizationServiceImpl.java 63.16% <77.78%> (+17.70%) ⬆️

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

private FhirContext fhirContext;
protected FhirContext fhirContext;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@getter(AccessLevel.Protected)

Copy link
Contributor Author

@mherman22 mherman22 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc: @ibacher

@@ -92,73 +92,6 @@ public Immunization create(@Nonnull Immunization newImmunization) {
return translator.toFhirResource(obs);
}

@Override
public Immunization update(@Nonnull String uuid, @Nonnull Immunization updatedImmunization) {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

removed the update aswell as patch since on addition of applyUpdate() override here, the rest of the stuff is duplication which can be minimized.

i.e

	@Override
	protected Immunization applyUpdate(Obs existingObject, Immunization updatedResource) {
		OpenmrsFhirTranslator<Obs, Immunization> translator = getTranslator();
		
		org.openmrs.Obs updatedObject;
		if (translator instanceof OpenmrsFhirUpdatableTranslator) {
			UpdatableOpenmrsTranslator<org.openmrs.Obs, Immunization> updatableOpenmrsTranslator = (OpenmrsFhirUpdatableTranslator<org.openmrs.Obs, Immunization>) translator;
			updatedObject = updatableOpenmrsTranslator.toOpenmrsType(existingObject, updatedResource);
		} else {
			updatedObject = translator.toOpenmrsType(updatedResource);
		}
		
		validateObject(updatedObject);
		
		return translator.toFhirResource(Context.getObsService().saveObs(updatedObject, "Updated via the FHIR2 API"));
	}

@ibacher
Copy link
Member

ibacher commented Jul 24, 2023

@mherman22 LGTM. Do you want to include the other patching methods in this PR or a separate one?

@mherman22
Copy link
Contributor Author

@mherman22 LGTM. Do you want to include the other patching methods in this PR or a separate one?

Looks like I forgot to include the rest of the integration tests. Will make a push and have them here .

@ibacher ibacher merged commit 1d868bb into openmrs:master Jul 28, 2023
3 of 4 checks passed
@mherman22 mherman22 deleted the FM2-582 branch August 5, 2023 11:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants