Official coding for GSoC began 30th of May and here is an update of what I have been doing.
My task is to make the radiology module a fhir server. I am following this tutorial http://hapifhir.io/doc_jpa.html and using this code https://github.com/jamesagnew/hapi-fhir/tree/master/hapi-fhir-jpaserver-example as reference. I kept on having issues with making the radiology module a fhir server. After implementing all the classes in radiology as documented in the fhir docs, my builds kept failing. Also the tutorial does not explain much about the different parts of the example server code on github so I have to make guesses about some things. So I decided to build a fhir server from scratch out of radiology just so I can understand the differents parts of the fhir server architecture. The problem I’ve been having so far is knowing which dependencies I should declare in my pom. The code on github is a multi module maven project and some dependencies in the parent pom have nothing to do with setting up a fhir jpa but they are declared in the pom just because another module needs them. Also there are some dependencies that are declared in the pom that are not directly used in the code.
I joined the fhir mailing list and posted the problems I was having there and though my problem was not directly solved I was pointed to another sample code that sets up a fhir server. https://github.com/nhsconnect/careconnect-java-examples. This is easier to work with as it’s not a multi module project hence all dependencies in the pom will probably be what’s necessary to setup a fhir server. And this has been helpful, I am beginning to understand why I kept on having build failures and trying to resolve them. But still the same I still have to figure things out just by looking at the code.
Here is the link to fhir server I’m working on https://github.com/ivange94/fhir-example-server. I used spring boot. I’ve just implemented the single class necessary to setup a fhir server(a class that extends one of the dstu base classes in this case dstu3). Now when I run the tests spring is unable to initialize the application context due to some missing dependencies. Currently working on that.