made RequestHandlerInterface argument optional to maintain BC