* Affected Issue(s): #611
What this commit has achieved:
1. MDM requires an implementation of `INicknameSvc`, it was instantiated
in `NicknameServiceConfig`
The error message regarding this was:
```
APPLICATION FAILED TO START
Description:
Parameter 2 of method matcherFactory in
ca.uhn.fhir.jpa.mdm.config.MdmCommonConfig required a bean of type
'ca.uhn.fhir.jpa.nickname.INicknameSvc' that could not be found.
Action:
Consider defining a bean of type 'ca.uhn.fhir.jpa.nickname.INicknameSvc'
in your configuration.
```
2. MDM requires the subscription of type message
The error message regarding this was:
```
2023-12-01 11:34:03
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'mdmSubmitterInterceptorLoader': Invocation of init
method failed; nested exception is
ca.uhn.fhir.context.ConfigurationException: HAPI-2421: MDM requires
Message Subscriptions to be enabled in the Storage Settings
```
* Affected Issue(s): #611
What this commit has achieved:
1. Added Integration Test for future-proof
* Added IG operation providers for run time installation of IG's
* Refactored conditions for enabling the provider
* Refactoring
* Disable it by default in config as well
* document package install feature
---------
Co-authored-by: Jose Costa Teixeira <jose.a.teixeira@gmail.com>
* Boyscouting: Docker conventions
* Boyscouting: JUnit 5 conventions ("It is generally recommended to omit the public modifier for test classes, test methods, and lifecycle methods unless there is a technical reason for doing so)"
* Boyscouting: typo in RepositoryValidationInterceptorFactoryDstu3
* Boyscouting: use List.of instead of Guava; use StandardCharsets instead of Guava; remove unused imports
---------
Co-authored-by: Gerlach, Winfried <Winfried.Gerlach@draeger.com>