<?php

namespace AutoAdmin\Bundle\Content\Translation\Model;

use AutoAdmin\Bundle\Content\Entity\Domain;
use AutoAdmin\Bundle\Content\Entity\Site;
use AutoAdmin\Bundle\Content\Model\LocaleInterface;
use AutoAdmin\Bundle\Content\Model\SiteConfig;

class LocaleSwitch
{
    public function __construct(
        protected ?SiteConfig $siteConfig,
        protected ?string $url = null,
        protected ?string $host = null,
        protected ?string $image = null,
    ) {
    }

    public function getLocale(): ?LocaleInterface
    {
        return $this->siteConfig->getLocale();
    }

    public function getDomain(): ?Domain
    {
        return $this->siteConfig->getDomain();
    }

    public function getSite(): ?Site
    {
        return $this->siteConfig->getSite();
    }

    public function getUrl(): ?string
    {
        return $this->url;
    }

    public function setUrl(?string $url): LocaleSwitch
    {
        $this->url = $url;

        return $this;
    }

    public function getHost(): ?string
    {
        return $this->host;
    }

    public function setHost(?string $host): LocaleSwitch
    {
        $this->host = $host;

        return $this;
    }

    public function getImage(): ?string
    {
        return $this->image;
    }

    public function setImage(?string $image): LocaleSwitch
    {
        $this->image = $image;

        return $this;
    }
}
