Deprecated API
Contents
-
Terminally Deprecated ElementsElementDescriptionas of 6.0, inject
SpringMappingsinsteadneither of the two properties this used to add is specific to IHE BALP: an audit repository context path belongs to the transport addressing it, and the token claim paths to the token. Both now sit onAuditContextitself, so this interface adds nothing. UseAuditContext.DefaultAuditContextnow carries everything this added. Use it instead.useTlsParametersthe wholeConfigurerSPI only ever expressed "collect all beans of typeTand push them into some holder", which core Spring expresses asbeanFactory.getBeanProvider(T.class).orderedStream(). Holders now collect their own contributions while the singletons are being initialized instead of being filled from the outside once an application context has been refreshed. Seeorg.openehealth.ipf.commons.spring.map.SpringBidiMappingService,org.openehealth.ipf.commons.spring.core.extend.SpringDynamicExtensionRegistrar,org.openehealth.ipf.modules.hl7.config.CustomModelClassesRegistrarandorg.openehealth.ipf.platform.camel.core.config.CustomRouteBuilderConfigurer.seeConfigurer. Ordering between contributions is now expressed with Spring's@Order/Orderedon the contributing bean itself, which is finer grained than a single order value shared by everything a configurer collected.this configurer requires aorg.openehealth.ipf.commons.spring.core.config.SpringConfigurationPostProcessorto drive it, and only runs once the application context has been fully refreshed. Declare aorg.openehealth.ipf.commons.spring.core.extend.SpringDynamicExtensionRegistrarbean instead, which collects theDynamicExtensionbeans itself and registers them while the singletons are being initialized. Both mechanisms may be active at the same time;DynamicExtensions.register(DynamicExtension)makes sure that no extension is registered twice.the trace context id was never anything but a correlation id read from an HTTP header, which is whatAuditDataset.getRequestId()is. Only the participant object it ends up in differs, and that isAuditDataset.getRequestIdType()now.useAuditDataset.setRequestId(String, ParticipantObjectIdType), withParticipantObjectIdTypeCode.W3cTraceContextor, for the Swiss EPR,ParticipantObjectIdTypeCode.SwissW3cTraceContext. This one keeps setting the Swiss code, which is what it always did.as of 6.0, passMappingsinsteaduse @{linkFhirEventTypeCode.getClientEventClassName(EventActionCode)(EventActionCode)}}as of 6.0, passMappingsinsteadas of 6.0, passMappingsinsteadas of 6.0, useMappings-DefaultMappingsis the implementation to build on, andSpringMappingsinipf-commons-springthe bean to wire. This class remains as an adapter for applications still holding aMappingService, and is scheduled for removal in IPF 7.0.the holders and registrars that used to be filled by this listener now collect their own contributions, so this bean can simply be removed from the application context. Running on aContextRefreshedEventwas also too late: every singleton has been created by then, so anything resolving e.g. a mapping during bean initialization saw an emptyMappingService. SeeSpringBidiMappingService,SpringDynamicExtensionRegistrar,org.openehealth.ipf.modules.hl7.config.CustomModelClassesRegistrarandorg.openehealth.ipf.platform.camel.core.config.CustomRouteBuilderConfigurer.Note that this listener also created a
SpringRegistryas a side effect, and thereby initialized theContextFacadethat the stateful Groovy and Kotlin extensions look up beans in. Contexts that relied on that side effect have to declare the registry explicitly when dropping this bean:<ipf:globalContext/>SpringMappings-- and the deprecatedSpringBidiMappingServicewhere it still owns its mappings -- collects theMappingResourceHolderbeans of the application context itself, so this configurer -- and theSpringConfigurationPostProcessorthat drives it -- are no longer needed:<bean id="mappings" class="org.openehealth.ipf.commons.spring.map.SpringMappings"/>Doing so also populates the mappings before theContextRefreshedEventinstead of after it, once all singletons have been instantiated. Both mechanisms may be active at the same time:SpringMappings.setMappingResource(org.springframework.core.io.Resource, String)ignores resources it has already evaluated.as of 6.0, useSpringMappingsand the typedMappingsAPI. This class remains as an adapter for applications still holding aMappingService, and is scheduled for removal in IPF 7.0.as of 6.0, along withSpringBidiMappingService. ConfigureSpringMappingswith itsmappingResourcesproperty, or declareCustomMappingsbeans, which it collects from the application context by itself.declare aCustomModelClassesRegistrarinstead, which collects theCustomModelClassesbeans of the application context itself and therefore needs neither this configurer nor aorg.openehealth.ipf.commons.spring.core.config.SpringConfigurationPostProcessor:<bean class="org.openehealth.ipf.modules.hl7.config.CustomModelClassesRegistrar"/>The registrar also works in Spring Boot, where custom HL7 model classes could not be contributed through this configurer at all. Both mechanisms may be active at the same time:CustomModelClassesRegistrar.addModels(CustomModelClassFactory, CustomModelClasses, boolean)skips package definitions the factory already knows about.
-
Deprecated InterfacesInterfaceDescriptionneither of the two properties this used to add is specific to IHE BALP: an audit repository context path belongs to the transport addressing it, and the token claim paths to the token. Both now sit on
AuditContextitself, so this interface adds nothing. UseAuditContext.useTlsParametersthe wholeConfigurerSPI only ever expressed "collect all beans of typeTand push them into some holder", which core Spring expresses asbeanFactory.getBeanProvider(T.class).orderedStream(). Holders now collect their own contributions while the singletons are being initialized instead of being filled from the outside once an application context has been refreshed. Seeorg.openehealth.ipf.commons.spring.map.SpringBidiMappingService,org.openehealth.ipf.commons.spring.core.extend.SpringDynamicExtensionRegistrar,org.openehealth.ipf.modules.hl7.config.CustomModelClassesRegistrarandorg.openehealth.ipf.platform.camel.core.config.CustomRouteBuilderConfigurer.
-
Deprecated ClassesClassDescription
DefaultAuditContextnow carries everything this added. Use it instead.seeConfigurer. Ordering between contributions is now expressed with Spring's@Order/Orderedon the contributing bean itself, which is finer grained than a single order value shared by everything a configurer collected.this configurer requires aorg.openehealth.ipf.commons.spring.core.config.SpringConfigurationPostProcessorto drive it, and only runs once the application context has been fully refreshed. Declare aorg.openehealth.ipf.commons.spring.core.extend.SpringDynamicExtensionRegistrarbean instead, which collects theDynamicExtensionbeans itself and registers them while the singletons are being initialized. Both mechanisms may be active at the same time;DynamicExtensions.register(DynamicExtension)makes sure that no extension is registered twice.useCEinstead.useEprConstantsinstead.as of 6.0, useMappings-DefaultMappingsis the implementation to build on, andSpringMappingsinipf-commons-springthe bean to wire. This class remains as an adapter for applications still holding aMappingService, and is scheduled for removal in IPF 7.0.the holders and registrars that used to be filled by this listener now collect their own contributions, so this bean can simply be removed from the application context. Running on aContextRefreshedEventwas also too late: every singleton has been created by then, so anything resolving e.g. a mapping during bean initialization saw an emptyMappingService. SeeSpringBidiMappingService,SpringDynamicExtensionRegistrar,org.openehealth.ipf.modules.hl7.config.CustomModelClassesRegistrarandorg.openehealth.ipf.platform.camel.core.config.CustomRouteBuilderConfigurer.Note that this listener also created a
SpringRegistryas a side effect, and thereby initialized theContextFacadethat the stateful Groovy and Kotlin extensions look up beans in. Contexts that relied on that side effect have to declare the registry explicitly when dropping this bean:<ipf:globalContext/>SpringMappings-- and the deprecatedSpringBidiMappingServicewhere it still owns its mappings -- collects theMappingResourceHolderbeans of the application context itself, so this configurer -- and theSpringConfigurationPostProcessorthat drives it -- are no longer needed:<bean id="mappings" class="org.openehealth.ipf.commons.spring.map.SpringMappings"/>Doing so also populates the mappings before theContextRefreshedEventinstead of after it, once all singletons have been instantiated. Both mechanisms may be active at the same time:SpringMappings.setMappingResource(org.springframework.core.io.Resource, String)ignores resources it has already evaluated.as of 6.0, useSpringMappingsand the typedMappingsAPI. This class remains as an adapter for applications still holding aMappingService, and is scheduled for removal in IPF 7.0.as of 6.0, along withSpringBidiMappingService. ConfigureSpringMappingswith itsmappingResourcesproperty, or declareCustomMappingsbeans, which it collects from the application context by itself.declare aCustomModelClassesRegistrarinstead, which collects theCustomModelClassesbeans of the application context itself and therefore needs neither this configurer nor aorg.openehealth.ipf.commons.spring.core.config.SpringConfigurationPostProcessor:<bean class="org.openehealth.ipf.modules.hl7.config.CustomModelClassesRegistrar"/>The registrar also works in Spring Boot, where custom HL7 model classes could not be contributed through this configurer at all. Both mechanisms may be active at the same time:CustomModelClassesRegistrar.addModels(CustomModelClassFactory, CustomModelClasses, boolean)skips package definitions the factory already knows about.
-
Deprecated MethodsMethodDescriptionas of 6.0, inject
SpringMappingsinsteadthe trace context id was never anything but a correlation id read from an HTTP header, which is whatAuditDataset.getRequestId()is. Only the participant object it ends up in differs, and that isAuditDataset.getRequestIdType()now.useAuditDataset.setRequestId(String, ParticipantObjectIdType), withParticipantObjectIdTypeCode.W3cTraceContextor, for the Swiss EPR,ParticipantObjectIdTypeCode.SwissW3cTraceContext. This one keeps setting the Swiss code, which is what it always did.use @{linkFhirEventTypeCode.getClientEventClassName(EventActionCode)(EventActionCode)}}
-
Deprecated Enum ConstantsEnum ConstantDescriptionthis error code is deprecated by IHE