publish/subscribe API for measurements generation
The Generator.generate(start, end)
method for generating measurements only allows to retrieve the full sorted set of generated measurements at once as the return value of the method.
This is cumbersome if a very large number of measurements are simulated over a long time range. For such an application, a publish/subscribe design pattern would be more adequate. It is easy to provide a default subscriber that gather all generated measurements and provide a sorted set, thus preserving compatibility.