Converted to use standard dependency injection configuration instead of annotations