Use ContainerAwareTrait
Refactor to use ViewInterface classes