public function prepareCountRequest(DataQueryControllerCubeRequest $request) { $metamodel = data_controller_get_metamodel(); $cube = $metamodel->getCubeByDatasetName($request->datasetName); $datasourceRequest = new CubeCountRequest($cube->name); // needs to be called before any additional methods are called $datasourceRequest->addOptions($request->options); $this->prepareRequestColumns($datasourceRequest, $cube, $request->columns); $this->prepareRequestQueries($datasourceRequest, $cube, $request->parameters); return $datasourceRequest; }