Currently, flow attributes are initialised in a new exchange in the implementation of the MessageExchangeFactory present in the container (petals-message-exchange).
Since most of the work around flow attributes is actually done in the CDK, it would be more coherent to move this initialisation in the CDK (at exchange creation).
Note:
- There is code responsibility: for now flow attributes things are implemented in petals-log, petals-commons-log and petals-cdk-steplog
- There runtime responsibility: for now flow attributes are initialised in messages in the container, and manipulated (transferred from message to execution context) in the CDK
This issue concerns the second point.
This implies that the complex architecture with the ContextualMessageExchangeImplBuilder and AbstractContextualMessageExchangeFactory is not needed anymore and can be removed.
See also PETALSCDK-129.