* First cut at multithreading bundle validation
* javadoc
* change test to a red-green test
* add daoconfig
* move bundle concurrency config from validationsupport to request validator
* Moved concurrent details from ValidationOptions to FhirValidator
* Remove bundleValidationThreadCount (it's set by creating an appropriate executor)
* validate threadpool prefixes
* FIXME cleanup
* reassign FIXMEs to JB
* only create the threadpool if it will be used
* Add the MdcTaskDectorator to all threadpools
* Add bundle path to concurrently validated bundle resource validation messages.
* Add test to check bundle entry path being added to validation messages
* Threaded validation of contained resources initial checkin
* FHIR validator refactored to maintain correct bundle path and async validation task
* Refactored to use validation complete invoke callback to support raw string resource or resource object
* switch from XML to JSON
* # Conflicts:
# hapi-fhir-base/src/main/java/ca/uhn/fhir/validation/FhirValidator.java
# hapi-fhir-validation/src/test/java/org/hl7/fhir/r4/validation/FhirInstanceValidatorR4Test.java
* Updated to use new HAPI-FHIR version
* merge 'validate_contains_change' into issue-3144-multi-threaded-bundle-validation
* Updated to use new HAPI-FHIR version
* Revert "Updated to use new HAPI-FHIR version"
This reverts commit 910b7f676b.
* Revert "merge 'validate_contains_change' into issue-3144-multi-threaded-bundle-validation"
This reverts commit c7d60fc3e6.
* Revert "Updated to use new HAPI-FHIR version"
This reverts commit aa8a7af455.
# Conflicts:
# hapi-fhir-validation/src/test/java/org/hl7/fhir/r4/validation/FhirInstanceValidatorR4Test.java
* Fix Test dependencies after reverting changes.
* merge 'validate_contains_change' to 2564-contained-resource-validation-flag
* Disable threadpool prefix name validate check.
* merge master
* fix thread regexp
* pre-review cleanup
* change log
* fix test
* revert to XML as default validation serialization
* fix test
* fix test
Co-authored-by: Jaison B <jaisonb@gmail.com>
* issue-1134 initial work on adding retry handler
* issue-1134 subdscription creation fixes
* issue-1134 update the test
* issue-1134 retry policy off canonicalsubscription
* issue 1134 base subscription changes
* add failing test
* issue 1134 retry configs on base parameters
* issue 1134 passing forward params
* issue-1134 added more tests for making sure subscriptions create their channels correctly
* issue-1134 updates to get the retry to channels
* issue-1134 updating channel factory
* issue-1134 remove the dlq since it's not defineable
* issue-3120 changelog added
* issue-3120 cleaning up
* issue-3120 test fix
* issue-3120 review fixes
* issue-3120 fixed bad master merge
* issue-3120 updates for new release
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* issue-1134 initial work on adding retry handler
* issue-1134 subdscription creation fixes
* issue-1134 update the test
* issue-1134 retry policy off canonicalsubscription
* issue 1134 base subscription changes
* add failing test
* issue 1134 retry configs on base parameters
* issue 1134 passing forward params
* issue-1134 added more tests for making sure subscriptions create their channels correctly
* issue-1134 updates to get the retry to channels
* issue-1134 updating channel factory
* issue-1134 remove the dlq since it's not defineable
* issue-3120 changelog added
* issue-3120 cleaning up
* issue-3120 test fix
* issue-3120 review fixes
* issue-3120 fixed bad master merge
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* Add tests. Add implementation in R4. Add changelog
* Wip partial fixup of other STU versions
* Updated usages of new patient type everything api
* Partial commit of incomplete documentation
* Remove docs
* Cut to token instead of string
* Bump hapi version due to breaking api changes
* Migration finished
* Work on LOBS
* Add to ClobMigrated annotation
* Deal with lobs
* Work on new approach
* HAPI FHIR version bump
* Add changelog
* Add license header
* Fix intermittent
* CLeanup
* Cleanup
* Try commenting out clearAllStaticFieldsForUnitTest to see what happens
* Rename clearAllStaticFieldsForUnitTest to randomizeLocaleAndTimezone and only do that
* first pass moving core storage classes to storage-api
* move term service apis
* nearly done
* rename hapi-fhir-storage-api to hapi-fhir-storage and move transaction processor
* rename hapi-fhir-storage-api to hapi-fhir-storage and move transaction processor
* create new SearchConstants class to store platform independent search constants
* move a couple of subscription services
* move transaction processor adapter to storage
* version bump
* move searchparam
* fix test
* fix compile includes
* fix text
* fix docs
* Avoid dead SearchParameter links in CapabilityStatement
* Resolve fixmes
* Build fix
* Test fix
* Test fix
* Test fix
* Work on metadata
* Fixes
* Test fixes
* Test fix
* Test fix
* Test fixes
* Test fix
* Work on test fixes
* Test fixes
* Test fixes
* Test fixes
* Test fix
* Fix params
* Resolve fixme
* Adjust changelogs
* Version bump to 5.6.0-PRE7
* Add license header
* Bump version to 5.6.0-PRE5-SNAPSHOT
* initial roughout of mdm clear batch job
* still roughing out classes
* finished first draft of reader
* most tests passing now
* all tests pass. now FIXMEs
* FIXMEs done. Time for regression.
* fix test
* changelog and docs
* fix test
* pre-review cleanup
* version bump
* move spring autowire deps for cdr
* move spring autowire deps for cdr
* finally got beans working phew
* rearrange method calls so persistence module can perform clear operation on its own
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_mdm/mdm_operations.md
Co-authored-by: Tadgh <tadgh@cs.toronto.edu>
* review feedback
* review feedback
* Remove inheritance
* fix beans
Co-authored-by: Tadgh <tadgh@cs.toronto.edu>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* prepare to add $delete-expunge operation that will create a spring batch job
* Add operation
* Wire up jpa provider. Begin with failing test.
* Copy/paste bulk import job as a starting point.
FIXME with proposed design
* delete expunge job parameter validation with test
* implemented reader
stubbed processor, writer
* wip for master merge
* started implementing reader
* started implementing reader
* working with stubs
* happy path batch delete expunge is done
* Provider done but test not passing. Guessing batch infrastructure not running in that test.
* IT test works now
* add reader test
* Converted delete _expunge=true to use new batch job
* DeleteExpungeDaoTest passes
* Fix test
* Change batch size to integer
* rename search count to batch size
* Make delete expunge partition aware
* updated docs
* pre-review cleanup
* change log
* add partition id to SystemRequestDetails
* Make RequestPartitionId serializable
* Change delete expunge provider to use partition id instead of tenant name
* fix tests
* test pointcut gets called
* assert on pointcut calls
* Add resource type to STORAGE_PARTITION_SELECTED pointcut
* bump hapi-fhir version
move expunge provider parameters from JpaConstants to ProviderConstants
* bump hapi-fhir version
* copyrights
* restore deleteexpungeservice for mdm
* restore deleteexpungeservice for mdm
* fix test
* public constants
* convert instant to date
* Moved expunge constants to ProviderConstants
* final review
* disabling InMemoryResourceMatcherR5Test.testNowNextMinute() to see if I can get a clean test run
* fix tests
* fix tests
* fix tests
* fix tests
* review feedback
* review feedback
* review feedback
* review feedback
* review feedback
* review feedback
* improve logging
* bump version
* version bump
* recovering from failed merge
* unzip RequestListJson per Gary's suggestion. I didn't want to do it at first, but as usual Gary was right.
* fix serialization
* Start work on OpenAPI
* Fixes
* Work on OpenAPI
* Cleanup
* Cleanup
* More swagger work
* Build fix
* More work
* More work
* Add documentation
* Docs fixes
* Add changelog
* License updates
* Add API
* Cleanup
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_plain/openapi.md
Co-authored-by: patrick-vachon-smilecdr <81274188+patrick-vachon-smilecdr@users.noreply.github.com>
* Work on scripts
* Add docs
* Compile fix
* Work on fixes
* Fix tests
* Test fix
* Test fix
* Build fix
* Tests
* Build fix
* Work on pipeline
* Version bump
* Test fix
* Version bump
* Test fix attempts
* Test fix
* Test fix
* Remove accidentally committed files
* Fixes
* Tets fixes
* Test fix
* Test fix
* Test fix
* Test fixes
* Test fixes
* Test fixes
* License header updates
* test fix
* Test fixes
* Test fix
* Test fixes
* Test fix
* Checkstyle bump
Co-authored-by: patrick-vachon-smilecdr <81274188+patrick-vachon-smilecdr@users.noreply.github.com>
* Start work on bul;k import
* Work on bulk import
* Have batch working
* Working
* Working
* More work
* More work on bulk export
* Address fixmes
* License header updates
* Test fixes
* License header updates
* Test fix
* Test fix
* Version bumps
* Work on config
* Test cleanup
* One more version bump
* Version bump
* CLeanup
* A few additions
* Test fixes
* Test fix
* Test fix
* Migration fix
* Test fix
* Test fix
* Search param service cleanup
* Work on collapsing search param
* Search param cleanup
* Work on build
* Test fix
* Test fixes
* Ongoing work
* Test fix
* Compile fix
* Test fixes
* Test fix
* Test fix
* License header updates
* Remove fixme
* Cleanup
* Cleanup
* Start work
* Work on testing
* Version bump
* Test fix
* Compile fix
* Test Fixes
* Test fix
* Test fix
* Compile fix
* Tst fix
* Test fix
* Test fix
* Test fix
* Bump jaxb-runtime from 2.3.1 to 3.0.0
Bumps jaxb-runtime from 2.3.1 to 3.0.0.
Signed-off-by: dependabot[bot] <support@github.com>
* Bump jaxb-runtime from 2.3.1 to 3.0.0
Bumps jaxb-runtime from 2.3.1 to 3.0.0.
Signed-off-by: dependabot[bot] <support@github.com>
* Add jakarta bindings
* Dependency cleanup
* More depndency cleanup
* Work on deps
* Replace transaction annotation
* Cleanup
* Another fix
* Build fix
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: jamesagnew <jamesagnew@gmail.com>
* Beginning work on converting to hibernate search 6
* replace all out of date properties
* replace all POM references to old versions
* remove the shaded ES jars as HS6 supports 7.9
* Convert "Bridges" to RoutingBinder and RoutingBridge
* Modernize all indexing annotations
* Begin refactoring of search queries (wip)
* Fix spatial API changes, work on BaseTermReadSvcImpl
* Most of the way through the various filter property conversions
* Finished i think with BaseTermReadSvcImpl
* Compiling, but definitely broken
* Start test compilation failures
* All tests compiling (i think)
* remove suggest keywords operation
* Fix bootstrap errors, still have to deal with transient fields
* Rollback CR
* More refactoring, got IDs baked back into docs
* Fix coord util, fix a few more fields which require projection
* merge fixes
* begin refactor of valuesetexpansion tests
* fix another test
* Update tests
* remove todos, add TestContainers
* Fix descendant in
* Add testcontainers, fix another test
* fix more tests, replace embedded es
* Rip out embedded elastic, replace with TestContainer
* merge conflicts for new analyzers
* Bump to CR2 for hibernate search 6. Add forgotten CLI dep. Add backwards compatible codecs
* Remove dead deps, update testcontainer
* Remove java-hamcrest
* Pull asserts up, refactor tests to pass in RP tests
* Update V2 check
* Remove suggest keyword tests
* Split line for testing
* Fix perhaps one of the dumbest programming mistakes in my career so far
* Refactor tests which no longer rely on a strict known order
* Fix up test config, disable log test temporarily
* Remove log4j from being transitively pulled in. re-enable test
* Update log4j exclusions with new bridge. Update test to check for core class
* Move dependency to root pom in dep management section
* Update changelog, add changelog for HS6 with ES requirements. Remove dead comment
* update testst, remove todos
* Add hibernate props provider method, add elastic regexp query
* Add todo for high level client builder
* Modify ElasticsearchRestClientFactory to support HTTPS hosts
* Remove protocol extraction from rest url
* do we even need to index this...?
* remove purge of non-indexed resources
* Add longer timeout to testcontainers
* Add task to add docker CLI to azure pipeline via task, for testcontainers
* WIP remove this
* Dont update version
* Add test for duplicate termconcepts
* Use real hibernate ORM methods
* merge issues
* Add partitionsettigns bean to match master
* Trying to debug testcontainers on azure...
* Trying to debug testcontainers on azure...
* Run even on previous failure
* Fix testcontainer port binds
* Add full text logs attaching, and test reporting
* I love yaml
* Remove comment
* Refactor delta remove to not do a once-over traversal and flatten all children pre-delete. Resolves transaction commit boundary issue
* Modify TX beheaviour
* wip
* Rework to use config and mocked beans for partition-aware lastN
* rework to not use beans and just inject vars i need for test, keps test envs cleaner
* update azure pipeline to only copy test results
* Remove erroneous publish
* Always get test logs
* Make it so indexing works,
* Add todos
* revert deleteByPid
* Work on test fixes
* Test fixes
* Test fixes
* Another test fix
* Test fix
* Work on tests
* Test fixes
* All tests passing locally
* Fix test failure
* FIx build error
* Rename usages of HibernateDialectProvider -> HibernatePropertiesProvider
* Update ngram of token filters
* Tidying
* subvert the purpose of hibernate elastic props builder to inject template
* dead space
* Rename changed class
Co-authored-by: jamesagnew <jamesagnew@gmail.com>
* 2229 - Remove support for the upload-igpack CLI command.
* 2229 - Revert changes made to the ValidateCommand class since it only takes an igpack as a parameter and therefore, should NOT have been removed.
* 2229 - Remove the igpack option from the Validate command.
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/5_3_0/2229-remove-upload-igpack-command.yaml
Co-authored-by: James Agnew <jamesagnew@gmail.com>
Co-authored-by: Kevin Dougan <kevindougan@kevins-mbp.lan>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* Add auto retry of transactions
* Experiment in Maven build
* Transaction autoretry
* Work on transaction retries
* Work on transaction retry
* Work on transaction retry
* Fix tests
* Avoid version conflicts
* Add changelog
* Resolve LGTM issue
* FIx transaction scope error
* Test fixes
* Test fix
* Test fixes
* Test fix
* Test fixes
* Work on junit
* Work on junit 5
* Work on junit 5
* Bump errorprone vcersion
* Work on tests
* Junit 5 tweaks
* Fixes
* Work on tests
* Work on junit5
* Work on tests
* Test fixes
* Work on junit5
* Test work
* Get junit5 working
* Test fix
* Work on tests
* WOrk on tests
* Work on tests
* fixes
* Compile fix
* One more tweak
* Compile fix
* Add changelog
* Fix compile error
* Compile fix
* Begin rework of package management
* Work on NPM
* Work on package management
* Work on NPM
* NPM rework
* Work on NPM
* NPM package rework
* Updates
* Updates
* Add license
* Work on package server
* Work on package importing
* Work on package management
* Package rework
* Work on packages
* Work on package manager
* Work on pkgs
* NPM work
* NPM rework
* Work on package cache
* Work on NPM
* Work on NPM
* Package fixes
* Add tests
* Tweaks
* Test fixes
* Add changelog
* Avoid snapshot dep
* Start working on FHIRPatch
* More work on fhirpatch
* Work on FHIR Patch
* Add patch
* Test fixes
* Test fixes
* Get tests fixed
* Chnage to trigger a build
* Compile fix
* Dependency version fixes
* Test fix
* COmpile fix
* Try to fix build
* Test fix attempt
* Another build attempt
* Another build tweak
* Cleanup
* Validation enhancements
* Work on validation api reworking
* Keep working on validation API
* Keep working on new term API
* Work on validation api
* Ongoing work on validation
* Work on integrating validation
* Work on validation API
* Add to validation API
* Work on validation
* Work on API
* Work on validation
* Work on validation API
* Work on validation API
* Work on validation api
* Work on validation API
* Work on validation api
* Validation API changes
* Work on API
* More work on validationo API
* Work on validation API
* FIxes
* WOrk on validation api
* Work on validation API
* Tests passing!
* More cleanup
* More validation API changes
* Fix intermittent test failure
* Package reorg
* Validation API work
* Work on doocumentation
* Work on API
* More work on new validation API
* Fix errorprone-reported error
* Test fixes
* Documentation updates
* Documentation tweaks
* Work on API
* Bean name adjustments
* Build fixes
* Some test fixes
* Added optionality for adding resource fetcher
* Added coverage that proves invocations
* Bumped version of fhir.core to latest version. Added wrapping of AssumeValidRestReferences
* Added optionality for adding resource fetcher
* Added coverage that proves invocations
* Bumped version of fhir.core to latest version. Added wrapping of AssumeValidRestReferences
* Start working on converter
* Account for compile errors
* Test fix
* Work no validator
* Work on getting core working
* Add some test coverage
* Many test fixes
Co-authored-by: Jens Kristian Villadsen <46567685+jvitrifork@users.noreply.github.com>
* Work on accepting codesystem reources for delta operations
* Ongoing work on term uploader
* Restore the ability to use CodeSystem resources for the delta
* Add tests
* Fix NPE
* Test fixes
* Version bumps
* FIx build issues
* Address a few Semmle issues
* Work on tests
* Some test fixes
* Test fix
* Fix deletions
* Test fix
* Fix intermittent test failure
* One more dependency bump
* Add some test logging
* Remove bad import
* Add some tests
* Test updates
* Start refactoring terminology delta operations
* Work on delta operations
* Work on concept saving
* Split term services into smaller services
* Work on term delta operations
* Work on term svcs
* Work on term operations
* More work on delta uploader
* Add a test
* Wrk on term service
* Fix compile error
* Some refactoring
* Test fix
* Test fix
* Test fixes
* Test fix
* Test fixes
* Test fixes
* Work on delta
* Work on tests#
* Test fixes
* Improve resequencing logic
* Build test
* More testing
* More build testing
* More work on tests
* CHange test logging
* Fix term service PID issue
* Update src/changes/changes.xml
Co-Authored-By: Diederik Muylwyk <diederik.muylwyk@gmail.com>
* Address review comment
* Some cleanup
* Test fix
* Fix some tests
* Work on upload command
* Test fixes
* Work on validation fixes
* Work on validation against pre-expansion
* Work on direct validation
* A bit of cleanup
* Add some javadoc
* Force another build
* Test fixes
* Fix tests
* Fix tests
* Start refactoring terminology delta operations
* Work on delta operations
* Work on concept saving
* Split term services into smaller services
* Work on term delta operations
* Work on term svcs
* Work on term operations
* More work on delta uploader
* Add a test
* Wrk on term service
* Fix compile error
* Some refactoring
* Test fix
* Test fix
* Test fixes
* Test fix
* Test fixes
* Test fixes
* Work on delta
* Work on tests#
* Test fixes
* Improve resequencing logic
* Build test
* More testing
* More build testing
* More work on tests
* CHange test logging
* Fix term service PID issue
* Update src/changes/changes.xml
Co-Authored-By: Diederik Muylwyk <diederik.muylwyk@gmail.com>
* Address review comment
* Some cleanup
* Test fix
* Fix some tests
* Test fixes
* Terminology Delta Uploading
* Add delta operations
* Fix up tests
* Improve test coverage a bit
* Improve test coverage reporting
* fix yaml
* A couple of test enhancements
* FIx intermittent test failure
* Start working on subscription processor
* Work on new scheduler
* Test fixes
* Scheduler refactoring
* Fix test failure
* One more test fix
* Updates to scheduler
* More scheduler work
* Tests now all passing
* Ongoing work on export
* Ongoing scheduler work
* Ongoing testing
* Work on export task
* Sync master
* Ongoing work
* Bump xml patch version
* Work on provider
* Work on bulk
* Work on export scheduler
* More test fies
* More test fixes
* Compile fix
* Reduce logging
* Improve logging
* Reuse bulk export jobs
* Export provider
* Improve logging in bulk export
* Work on bulk export service
* One more bugfix
* Ongoing work on Bulk Data
* Add changelog
* This should be working now - need to check tests
* Add a changelog and some docs
* One more test fix
* Tests should be passing
* Fix compile
* Test fixes
* Ignore outdated DSTU2 validation test
* Start work on delta operations
* Add changelog
* Some build fixes
* Move upload terminology command to CodeSystem resource
* Updates
* Some test fixes
* Add changelog
* Some test fixes
* More test fixes
* Test fix
* Add additional tests
* Transaction boundary fixes
* Ongoing work on core structures suport
* Ongoing work on this merge
* Ongoing work to clean up structures
* Credit for #1179
* Address compile issues
* Latest changes
* Work on parallel execution
* Work on getting tests passing
* Add H2 to migrator
* Test fix
* Initial consent svc
* Ongoing consent svc work
* Add docs
* Ongoing consent service work
* Work on consent service
* More work on consent svc
* License header updates
* Ongoing consent svc work
* Some test fixes
* Some test fixes
* More work on consent svc
* Tests working
* Test fix
* Propagate RequestDetails to everything in JPA server
* More interceptor tweaks
* Fix compile error
* One more tweak to captured SQL
* Ongoing interceptor tweaks
* Ongoing interceptor tweaks
* More interceptor tweaks
* Interceptor tweaks
* Tweaks to tests
* Fix tests
* Test fix
* Raise warnings when encoding extensions with missing values
* Consent service work
* More interceptor tweaks
* Consent interceptor tweaks
* Add logging to test
* Reproduced issue in unit test and identified potential solution.
* Fixed using BOMInputStream.
* Added changelog.
* Added a missing word in changelog.
* Added a missing word in changelog. Take two.
* Starting work on this
* Working on narrative templates
* Work on new narrative system
* Account for some failing tests due to refactoring of narrative mode
* Another test fix
* More test fixes
* One more test fix
* Work on searches
* Address review comments
* Fixed a bug in standalone subscription subscriber: It was adding REQUESTED subscriptions to the active subscription registry. (Only ACTIVE subscriptions should be added.)
* Reorganizing packages and dependencies to support standalone subscription running within a CDR container where all hapi modules are on the classpath.
Moved Subscription registry out of interceptor and introduced SubscriptionLoader
* Created ActiveSubscription and moved cache bits into it
* Moved ExecutorQueue stuff out into its own class
* Add test and supporting code to validate SubscriptionConstants.EXT_SUBSCRIPTION_RESTHOOK_DELIVER_LATEST_VERSION behaviour
* Added SubscriptionCheckingSubscriber
* Moved a few beans to @ComponentScan
* Replaced use of beanFactory with concrete factory classes
* Switched test to use subscribablechannel
* Added SubscriptionLoaderFhirClientTest
* Confirm that our SubscriptionProviderFhirClient works with a live fhir client
* Register interceptors with DaoConfig instead of RestServer.
Also, Rename @VisibleForTesting methods with ForUnitTest
* Fix triggering service so it uses new subscriptionmatcherinterceptor
* Renamed "Database" classes to "Dao"
* processing -> matching naming change
* Replace phloc with ph
* Enable schematron tests
* Make HAPI-FHIR ph-schematron on OSGI
* Work on getting tests passing
* Another test fix
* Fix up transaction handling for DSTU2
* Add changelog
* Avoid double transaction
* Dont use readonly
* One more test fix
* Update to snapshow build
* Resolve a circular dependency
* Try to fix tests
* Solve recurring NPE in DSTU2 tests
* Fix one more test
* Test fix
* More test threading fixes
* One more attempt to get tests passing
* Refactoring for tests
* Refactoring for tests