This repository contains common utilities and models shared between the HAPI FHIR server and the FHIR core mobile client.
- Location hierarchy management utilities
- FHIR practitioner details models
- Common tree data structures for hierarchical data
- Utilities for FHIR resource handling
Add the following dependency to your pom.xml
:
<dependency>
<groupId>org.smartregister</groupId>
<artifactId>fhir-common-utils</artifactId>
<version>1.0.3</version>
</dependency>
Add the following dependency to your build.gradle
:
implementation 'org.smartregister:fhir-common-utils:1.0.3'
- Java 11 or higher
- Maven 3.6 or higher
mvn clean compile
mvn test
mvn clean package
This project is published to Maven Central. The release process is automated through GitHub Actions:
Snapshot releases are automatically deployed when tags matching the pattern v*-SNAPSHOT
are pushed:
git tag v1.0.4-SNAPSHOT
git push origin v1.0.4-SNAPSHOT
Production releases are automatically deployed to Maven Central when tags matching the pattern v*
(without -SNAPSHOT) are pushed:
git tag v1.0.4
git push origin v1.0.4
Release candidates can be created using the pattern v*-RC*
:
git tag v1.0.4-RC1
git push origin v1.0.4-RC1
The following secrets must be configured in your GitHub repository:
SETTINGS_XML
: Base64-encoded Maven settings.xml file containing Sonatype OSSRH credentialsGPG_PRIVATE_KEY
: Base64-encoded GPG private key for signing artifactsGPG_PASSPHRASE
: Passphrase for the GPG private key
Create a settings.xml
file with the following structure:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>ossrh</id>
<username>your-sonatype-username</username>
<password>your-sonatype-password</password>
</server>
</servers>
</settings>
Then encode it as base64 and add it as the SETTINGS_XML
secret:
base64 -i settings.xml
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
For support, please open an issue in the GitHub repository or contact the maintainers.