voytech / tabulate

Kotlin library for exporting collections of object into tabular formats.
Apache License 2.0
2 stars 0 forks source link

ExportOperationProvider is cached - remove state in its abstract class #145

Closed voytech closed 2 years ago

voytech commented 2 years ago

RenderingContext is lazy and is a property of AbstractExportOperationFactory class. It requires to be instantiated per exporting.

Export operations and attribute export operations may require contract change to provide RenderingContext as a parameter. Now it is taken from closure scope or from constructor and is bound to operation instance, so when rendering context instance change - operation instances require change too (e.g new instance)