public function buildService(Repository $repository, $serviceName) { $methodName = 'get' . $serviceName . 'Service'; if (!method_exists($repository, $methodName)) { throw new InvalidArgumentException($serviceName, 'No such service'); } return $repository->{$methodName}(); }