James Agnew 5c4aae0b26
Partitioned ID Mode (#6391)
* Begin work on PK schema selector

* Work on generator

* Filter working

* Add tests

* Work on tests

* Work on contributor

* Work

* Tests passing

* Drop unneeded annotation

* Partition cleanup

* About to merge JpaPid

* Work on IDs

* Tests passing

* Working on query count tests

* Ongoing work

* Ongoing work

* Working on tests - Running but about to try removing
ResourceHistoryProvenanceEntity link

* More tests passing

* Fix some more tests

* Test fixes

* About to add partition ID to selector

* Most query count tests passing

* Work on tests

* Working on includes

* All conditional tests passing again

* About to modify joins in SQL builder

* Search generator refactored, and tests passing

* Tag tests done

* Work on tests

* Everything operation fixed

* Clean up PIDs for batch job

* Clean up search paging

* Work on expunge service

* Work on tests

* Test fixes

* Work on same transaction updates

* Work on JPA R4 tests

* Work on tests

* Fixes

* Work

* Test fix

* Work on tests

* Cleanup

* Test fixes

* Test fix

* Spotless

* License headers

* Test fix

* License headers

* Compile fix

* Test fix

* Test fix

* Test fixes

* Test fixes

* Cleanup

* Test fixes

* Test fixes

* Starting to address fixmes

* Spotless

* More test cleanup

* Test cleanup

* Test fixes

* Test fixes

* Spotless

* Test cleanup

* Test fix

* Deal with test failures

* Spotless

* Test fixes

* About to modify RESOURCE_LOOKUP cache

* Test cleanup

* Intermittent test fix

* Try to resolve intermittent

* More test work

* Test fixing

* Add tests

* Spotless

* Add troubleshooting logs

* Add test logging

* More test logging

* Test fix

* Test fixes

* Test fix

* Test fixes

* Test cleanup

* Test cleanup

* Test fix

* Test fix

* Fixes

* Add tests

* Test cleanup

* Remove stale test

* Test fix

* Imports cleaniup

* Work on migrations

* Work on migrations

* Work on PKs

* Work on tests

* Cleanup

* Test fix

* Test fix

* Spotless

* Test fixes

* Test fix

* Test fixes

* Test fix

* t fix

* Test fixes

* Test fix

* Test fixes

* Add test method

* Test cleanup

* Test fixes

* Cleanup

* Test fixes

* Cleanup

* Test cleanup

* Test fix

* Add migrator support

* More test work

* Spotless

* Add header

* License header

* Test fix

* MDM test fixes

* Test fix

* Add tests

* Cleanup

* Compile fix

* Spotless

* Work on docs

* Cleanup

* Add partitioned test

* Work on tests

* Rename JpaPidValueTuples

* Test cleanup

* Test fixes

* Cleanup

* Cleanup

* Spotless

* Spotless

* Test fixes

* Test fixes

* Build fix

* test fix

* Test fixes

* Build fix

* Cleanup

* Merge master

* Cleanup

* Work on tests

* Test fixes

* i

* Cleanup

* Cleanup

* Cleanup

* Work on docs

* Work on cleanup

* Compile fix

* Test fix

* Spotless

* Compile fix

* Refactor for CDR work

* Disable test

* Add constants

* Vdersion bump

* Rename class and add error codes

* Compile fix

* DDL plugin tweak

* Test fix

* Add javadocs

* Cleanup

* Address review comments

* Plugin version bump

* Address review comments

* Test fixes

* Test cleanup

* Partitionable indexes

* Address fixmes

* Test fix

* Bump to force CI job

* Docs fix

* Fix typo

* Test fixes

* Docs fix

* Test cleanup

* Remove unused field

* Work on migration

* License headeer updates
2025-01-02 15:57:56 -05:00

370 lines
9.7 KiB
XML

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-deployable-pom</artifactId>
<version>7.7.17-SNAPSHOT</version>
<relativePath>../hapi-deployable-pom/pom.xml</relativePath>
</parent>
<artifactId>hapi-fhir-structures-r4</artifactId>
<packaging>bundle</packaging>
<properties>
<shexjava_version>1.3beta</shexjava_version>
</properties>
<name>HAPI FHIR Structures - FHIR R4</name>
<dependencies>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-base</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>org.hl7.fhir.utilities</artifactId>
<version>${fhir_core_version}</version>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>org.hl7.fhir.r4</artifactId>
<version>${fhir_core_version}</version>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-caching-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.fhir</groupId>
<artifactId>ucum</artifactId>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--
Optional dependencies from RI codebase
-->
<dependency>
<groupId>com.fasterxml.woodstox</groupId>
<artifactId>woodstox-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>es.nitaur.markdown</groupId>
<artifactId>txtmark</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>ST4</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.ogce</groupId>
<artifactId>xpp3</artifactId>
<optional>true</optional>
</dependency>
<!--
Test dependencies on other optional parts of HAPI
-->
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-validation-resources-r4</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-client</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-server</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>apache-jena-libs</artifactId>
<optional>true</optional>
<type>pom</type>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>com.github.jsonld-java</groupId>
<artifactId>jsonld-java</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>fr.inria.lille.shexjava</groupId>
<artifactId>shexjava-core</artifactId>
<version>${shexjava_version}</version>
<scope>test</scope>
<exclusions>
<!-- If this is included it confused the RDFParser -->
<exclusion>
<groupId>org.apache.commons</groupId>
<artifactId>commons-rdf-jena</artifactId>
</exclusion>
<exclusion>
<artifactId>xml-apis</artifactId>
<groupId>xml-apis</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.helger.commons</groupId>
<artifactId>ph-collection</artifactId>
<scope>test</scope>
</dependency>
<!--
Optional dependencies used by org.hl7.fhir.r4
We include these here to get the aggregate JavaDoc to work
-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>ooxml-schemas</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
</dependency>
<!-- Testing -->
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-caching-testing</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<optional>true</optional>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-test-utilities</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.awaitility</groupId>
<artifactId>awaitility</artifactId>
<scope>test</scope>
</dependency>
<!-- UNIT TEST DEPENDENCIES -->
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<classifier>jdk15</classifier>
<scope>test</scope>
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
<exclusion>
<artifactId>commons-lang</artifactId>
<groupId>commons-lang</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<classifier>jdk15-sources</classifier>
<scope>test</scope>
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>directory-naming</groupId>
<artifactId>naming-java</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<show>public</show>
</configuration>
</plugin>
</plugins>
</reporting>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<configuration>
<!-- Don't add UHN licenses to RI structures -->
<skipUpdateLicense>true</skipUpdateLicense>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<_nouses>true</_nouses>
<_removeheaders>Built-By, Include-Resource, Private-Package, Require-Capability</_removeheaders>
<!-- No need to disable normal OSGi class loading
<Fragment-Host>
ca.uhn.hapi.fhir.hapi-fhir-base
</Fragment-Host>
-->
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<includeDependencySources>true</includeDependencySources>
<dependencySourceIncludes>
<include>ca.uhn.hapi.fhir:org.hl7.fhir.r4</include>
</dependencySourceIncludes>
<additionalDependencies>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>${okhttp_version}</version>
</dependency>
</additionalDependencies>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>DIST</id>
<dependencies>
<!-- When we're building a DIST, make sure that the javadocs for fhir_core are available -->
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>org.hl7.fhir.r4</artifactId>
<classifier>javadoc</classifier>
<scope>provided</scope>
<version>${fhir_core_version}</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>CI</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>