23-07 - Migration from Manual IM to Provisioned IM

Owners: @Jan Kadlec @Michal Vích

To migrate from a manual IM instance to a provisioned IM, take the following steps.

Name

Step

Name

Step

StringToDecimalExtended

Moved to shared library

FileModifiedFilter

Moved to shared library

BasicAggregationStrategy

Already exists in IM as aggregateToList

AddPGIMetadataBasedFieldsProcessor

Moved to shared library but it is most probably a copy of already existing AddPGIMetadataBasedFieldsProcessor in IM core

DebugBreakpointProcessor

Moved to shared library

DeleteAsyncBean

Should be replaced by pfx-api:delete

DataLoadClient

Replaced by IM core methods

Configurator

Replaced by pfx-config:set

QuoteExtendedService.fetchQuote

<to uri="pfx-api:fetch?quoteUniqueName=P-7320&objectType=Q"/>

QuoteExtendedService.saveQuote

<to uri="pfx-api:save?objectType=Q"/>

This example shows how to fetch, modify and save a quote:

<to uri="pfx-api:fetch?quoteUniqueName=P-7320&amp;objectType=Q"/> <setBody> <groovy>body[0]</groovy> </setBody> <setBody> <groovy> body["label"] = "Changed quote label" body </groovy> </setBody> <to uri="pfx-api:save?objectType=Q"/>

Change the event route definition for multiple partitions setups.

bean id="eventRouteFielmann_at" class="net.pricefx.integration.route.EventRoute"> <property name="priceFxConnection" ref="fielmann_at"/> <property name="cacheFolder" value="${rootFolder-inbound-at}/events"></property>

More details are in a Teams discussion (Pricefx only).

<bean id="eventRouteFielmann_at" class="net.pricefx.integration.route.EventRoute"> <property name="priceFxClientName" value="fielmann_at"/> <property name="cacheFolder" value="#{environment['rootFolder-inbound-at']}/events"/>

Snowflake driver is not compatible with Java 16

Modify JDBC URL as follows:
amd.snowflake.url=jdbc:snowflake://amd-amdedw.snowflakecomputing.com?jdbc_query_result_format=json

https://pricefx.atlassian.net/browse/PFIMCORE-1677

How to bind a Spring property in a Groovy class

public @Value('${irm.anzac.gzipData-filePattern}') String gzipDataFilePattern;

How to get the Pricefx client in a Groovy class

You need to pass exchange as a parameter to the method and then find the client in the registry and use the following method:

 

 

IntegrationManager version 5.8.0