<?php declare(strict_types=1); namespace WerkraumMedia\Events\Service\DestinationDataImportService; use TYPO3\CMS\Core\Http\Uri; use WerkraumMedia\Events\Domain\Model\Import; /** * Factory to create URLs used during import of Destination Data. */ final class UrlFactory { /** * URL used to fetch initial set of data. */ public function createSearchResultUrl( Import $import ): string { $parameter = [ 'experience' => $import->getRestExperience(), 'licensekey' => $import->getRestLicenseKey(), 'type' => 'Event', 'mode' => $import->getRestMode(), 'limit' => $import->getRestLimit(), 'template' => 'ET2014A.json', 'q' => $import->getRestSearchQuery(), ]; $parameter = array_filter($parameter); $url = new Uri('http://meta.et4.de/rest.ashx/search/'); $url = $url->withQuery(http_build_query($parameter)); return (string)$url; } }