public function getReportLoader($attachAssetUrl = null, $assetRoute = null, $routeParameters = null) {
        //Determine whether to use the defaults or not
        $attachAssetUrl = $attachAssetUrl ?: $this->defaultAttachAssetUrl;
        $assetRoute = $assetRoute ?: $this->defaultAssetRoute;
        $routeParameters = $routeParameters ?: $this->routeParameters;

        //Add the asset and request id placeholders into the route parameters array
        $routeParameters['asset'] = '!asset!';
        $routeParameters['requestId'] = '!requestId!';

        //Create the asset url
        if ($attachAssetUrl) {
            $assetUrl = $this->router->generate($assetRoute, $routeParameters);
        }

        //Create a new report loader instance
        return new ReportLoader($this->reportCacheDir, $attachAssetUrl, $assetUrl, $this->defaultPage);
    }