Custom object handlers for changed data detection
The following is a description of the changes to how InfoSphere® MDM uses and handles custom object handlers for changed data detection.
Before OSGi
If you had created custom object
handlers for data change detection, you would have followed this pattern:
CDCHandler.default.2= com.ibm.mdm.datachange.DCObjectHandler
CDCHandler.com.dwl.tcrm.coreParty.component.TCRMPartyAddressBObj.2=
com.ibm.mdm.party.datachange.PartyDCHandler
CDCHandler.com.dwl.tcrm.coreParty.component.TCRMPartyIdentificationBObj.2=
com.ibm.mdm.party.datachange.PartyDCHandler
CDCHandler.com.dwl.tcrm.coreParty.component.TCRMPartyContactMethodBObj.2=
com.ibm.mdm.party.datachange.PartyDCHandler
CDCHandler.com.dwl.tcrm.coreParty.component.TCRMPersonNameBObj.2=
com.ibm.mdm.party.datachange.PartyDCHandler
CDCHandler.com.dwl.tcrm.coreParty.component.TCRMOrganizationNameBObj.2=
com.ibm.mdm.party.datachange.PartyDCHandler
CDCHandler.<the BObj that you want to handle>.2= <your handler class name>Where
the number 2 represented the purpose type as
defined in the CRITICALDATAELEMENT table. With OSGi
This has been redefined using
OSGi blueprints:
<service interface="com.ibm.mdm.datachange.IDCObjectHandler" id="cdchandler.purposetype.2">
<service-properties>
<entry key="business.object.purposetype" value="2"/>
<entry key="business.object">
<list value-type="java.lang.String">
<value>com.dwl.tcrm.coreParty.component.TCRMPartyAddressBObj</value>
<value>com.dwl.tcrm.coreParty.component.TCRMPartyIdentificationBObj</value>
<value>com.dwl.tcrm.coreParty.component.TCRMPartyContactMethodBObj</value>
<value>com.dwl.tcrm.coreParty.component.TCRMPersonNameBObj</value>
<value>com.dwl.tcrm.coreParty.component.TCRMOrganizationNameBObj</value>
<value>com.dwl.tcrm.coreParty.component.TCRMAddressBObj</value>
</list>
</entry>
</service-properties>
<bean class="com.ibm.mdm.party.datachange.PartyDCHandler" />
</service>In the preceding example, each property entry that maps a business object to a handler is replaced by a blueprint service. Each separate handler is its own service. The service properties define the purpose type as laid out in the CRITICALDATAELEMENT table and also the list of business objects that the critical data change handler handles.