Currently, the transformation_definitions.json file is capable of passing a Map<String,String> as a parameter to the translations objects. Because of this constraint, we are unable to pass more complex types of maps and this forces us to add the complex map/data as part of the transformation class.
Propose Solution
Add the feature of passing a complex map (Map<String,Object>) from the transformation_definitions.json file. This feature will make it possible to inject the data via the transformation_definitions.json, adding flexibility, reusability, and generalizing our transformations.
Tasks
[x] Add Map<String,Object> args to Interfaces
[x] CustomFhirTransformation
[x] HappyPathCustomTransformationMockClass
[x] Add Map<String,Object> to TransformationRuleMethod
[x] Add Map<String,Object> to TransformationRule
[x] Add Map<String,Object> args to all available transformations
[x] Refactor
[x] failing tests cases
[x] null check transformations that use args
[x] Test coverage of new code
Additional Context
Add any other context or screenshots about the work here.
DevEx/OpEx
Currently, the transformation_definitions.json file is capable of passing a Map<String,String> as a parameter to the translations objects. Because of this constraint, we are unable to pass more complex types of maps and this forces us to add the complex map/data as part of the transformation class.
Propose Solution
Add the feature of passing a complex map (Map<String,Object>) from the transformation_definitions.json file. This feature will make it possible to inject the data via the transformation_definitions.json, adding flexibility, reusability, and generalizing our transformations.
Tasks
Additional Context
Add any other context or screenshots about the work here.