Retaining destination-only fields
To synchronize changes to the source fields while preserving the value of the verified
field of the ubidEmailJSON
attribute at the destination, configure the JSON Attribute as follows:
$ bin/dsconfig create-json-attribute \
--pipe-name "A to B" \
--class-name Users \
--attribute-name ubidEmailJSON \
--set id-field:value \
--set exclude-field:verified
The verified
field is excluded and value
is chosen to correlate destination values with source values. For example, given that the source and destination value
fields match, if the source initially contained:
ubidEmailJSON: {"value" : "jsmith@example.com", "type" : "home"}
and the destination contained:
ubidEmailJSON: {"value" : "jsmith@example.com", "type" : "home", "verified" : true},
if the source changed to:
ubidEmailJSON: {"value" : "jsmith@example.com", "type" : "other"}
then the destination would change to:
ubidEmailJSON: {"value" : "jsmith@example.com", "type" : "other", "verified" : true}
However, if the source changed to:
ubidEmailJSON: {"value" : "john.smith@example.com", "type" : "home"}
then the destination would be updated to:
ubidEmailJSON: {"value" : "john.smith@example.com", "type" : "home"}
The verified
field has been dropped because this logically represents a new JSON object rather than an update of an existing one.