/**
* Localize given domain.
*
* @param string $domain
* @param Localization $locale
*
* @return string
*/
protected function localizeDomain($domain, Localization $locale)
{
if (!$this->urlReplacer->hasLocalizationReplacer($domain) && !$this->urlReplacer->hasLanguageReplacer($domain)) {
$domain = $this->urlReplacer->appendLocalizationReplacer($domain);
}
$domain = $this->urlReplacer->replaceLanguage($domain, $locale->getLanguage());
$domain = $this->urlReplacer->replaceCountry($domain, $locale->getCountry());
$domain = $this->urlReplacer->replaceLocalization($domain, $locale->getLocalization());
return $this->urlReplacer->cleanup($domain);
}