updated generator interface to remove consumer
generator concrete implementation
generator test implementation