The concept of manipulators is powerful in terms of modifying data when flowing in (import) and out (export) from Plugboard. On Connectors you have settings to, some extent, tell Plugboard how to treat/transform/map the external system data object into Plugboard representation.
On top of this you could also add one or more manipulators to the Connector to add another layer of modification to the objects flowing through it. Several rules can form a chain of manipulation where each rule work on the current object state in each step of the chain.
Manipulators are grouped into several categories following core objects. This means there are different rules available for e.g. Product, Order, Invoice.
In general you can add all available rules on either import side or exportside or even both. It's all depending on the specific use case and overall setup when you want to apply rule(s) on import or export side, or even both.
Each manipulator comes with its own set of available settings. Which specific settings available depends on that specific rule. Consult each individual manipulator for an in-depth description of that particular rule.
The concept of conditions is important in context of manipulators. The condition is just as it sounds, a condition, and it needs to be fulfilled in order for the rule to be applied. You add one or more conditions to your rule so that Plugboard knows if it should apply the rule logic for that particular object. Read more about conditions here.
Since you can add more than one manipulator you also have the possibility to change the order of them. This order is honored by Plugboard and the rule will be executed in exactly that order. Important to understand since the object might be altered in each step. Meaning each manipulator will receive the object state from the previous one.
When importing data you can notice that the rule(s) are applied after the Connector and it's setting have been applied. That means the data object that is being handed over to the rule chain is the object state after Connector has processed it.
When exporting data you can notice that the rule(s) are applied before the Connector and it's setting are applied. That means the data object that is being handed over to the rule chain is the object state in Plugboard.
A couple of advises;
- Give your manipulators a well thought through name.
- Write a short note about the rule, might come in handy in the future when you or someone else needs to look back on what the rule does and why.
- Think through carefully if the manipulator should be used on import side, or export side taking the big picture into consideration.