Sindbad~EG File Manager

Current Path : /opt/nginxhttpd_/vendor/extensions-cpanel/cpanel-development-lib/src/Entity/
Upload File :
Current File : //opt/nginxhttpd_/vendor/extensions-cpanel/cpanel-development-lib/src/Entity/Customization.php

<?php

namespace O2switch\CpanelLib\Entity;

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
use O2switch\CpanelLib\Repository\CustomizationRepository;
use O2switch\CpanelLib\DataEntity\ProxyPassInfo;
use Symfony\Component\Validator\Constraints as Assert;

/**
 * Customization
 *
 * @ORM\Table(name="Customization",
 *     uniqueConstraints={
 *          @ORM\UniqueConstraint(name="servername", columns={"servername"}),
 *          @ORM\UniqueConstraint(name="mainDomain", columns={"mainDomain"})
 *     }
 * )
 * @ORM\Entity(repositoryClass=CustomizationRepository::class)
 */
class Customization
{

    const APP_NGINX = 1;
    const APP_VARNISH = 2;
    const APP_LSCACHE = 3;

    // Application type
    const TYPE_NONE = "none";
    const TYPE_CACHE = "cache";
    const TYPE_CACHE_DISABLED = "disabledCache";
    const TYPE_IPXTENDER = "ipxtender";
    const TYPE_IPXTENDER_AND_CACHE = "ipxtenderAndCache";
    const TYPE_IPXTENDER_AND_CACHE_DISABLED = "ipxtenderAndCacheDisabled";
    const TYPE_LSCACHE = "lscache";
    const TYPE_IPXTENDER_AND_LSCACHE = "ipxtenderAndLscache";

    /**
     * @var int
     * @ORM\Column(name="id", type="bigint")
     * @ORM\Id()
     * @ORM\GeneratedValue()
     */
    private $id;

    /**
     * @var string
     * @ORM\Column(name="mainDomain", type="string", length=255, nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     * @Assert\Regex("#^[a-zA-Z0-9-.]+\.[a-zA-Z]{2,}$#")
     */
    private $mainDomain;

    /**
     * @var string
     * @ORM\Column(name="servername", type="string", length=120, nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     */
    private $servername;

    /**
     * @var string
     * @ORM\Column(name="cpUser", type="string", length=20, nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     * @Assert\Length(min=2, max=16)
     * @Assert\Regex("#^[a-z][a-z0-9]{1,15}$#")
     */
    private $cpUser;

    /**
     * @var string
     * @ORM\Column(name="originalBackendIP", type="string", length=15, nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     * @Assert\Ip()
     */
    private $originalBackendIP;

    /**
     * @ORM\Column(name="type", type="string", length=255, nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     * @Assert\Choice(choices={Customization::TYPE_NONE, Customization::TYPE_CACHE, Customization::TYPE_CACHE_DISABLED,
     *     Customization::TYPE_IPXTENDER, Customization::TYPE_IPXTENDER_AND_CACHE, Customization::TYPE_LSCACHE,
     *     Customization::TYPE_IPXTENDER_AND_CACHE_DISABLED, Customization::TYPE_IPXTENDER_AND_LSCACHE})
     */
    private $type;

    /**
     * @var array|null
     *
     * @ORM\Column(name="additionalData", type="json", length=65535, nullable=true)
     * @Assert\Type(type="array")
     */
    private $additionalData;

    /**
     * @var bool
     * @ORM\Column(name="isSslAvailable", type="boolean", nullable=false)
     * @Assert\Type("boolean")
     */
    private $isSslAvailable;

    /**
     * @var string
     * @ORM\Column(name="customerIp", type="string", length=15, nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     * @Assert\Ip()
     */
    private $customerIp;

    /**
     * @var \DateTime
     * @ORM\Column(name="dateCreated", type="datetime", nullable=false)
     * @Assert\NotBlank()
     * @Assert\NotNull()
     */
    private $dateCreated;

    /**
     * @ORM\OneToMany(targetEntity=Chain::class, mappedBy="customization")
     * @ORM\OrderBy({"position" = "ASC"})
     */
    private $chains;

    public function __construct(){
        $this->chains = new ArrayCollection();
    }

    public function setProxyPassInfo(ProxyPassInfo $proxyPassInfo){

    }

    /**
     * @return string
     */
    public function getMainDomain(): string
    {
        return $this->mainDomain;
    }

    /**
     * @param string $mainDomain
     * @return Customization
     */
    public function setMainDomain(string $mainDomain): Customization
    {
        $this->mainDomain = $mainDomain;
        return $this;
    }

    /**
     * @return string
     */
    public function getServername(): string
    {
        return $this->servername;
    }

    /**
     * @param string $servername
     * @return Customization
     */
    public function setServername(string $servername): Customization
    {
        $this->servername = $servername;
        return $this;
    }

    /**
     * @return string
     */
    public function getCpUser(): string
    {
        return $this->cpUser;
    }

    /**
     * @param string $cpUser
     * @return Customization
     */
    public function setCpUser(string $cpUser): Customization
    {
        $this->cpUser = $cpUser;
        return $this;
    }

    /**
     * @return string
     */
    public function getOriginalBackendIP(): string
    {
        return $this->originalBackendIP;
    }

    /**
     * @param string $originalBackendIP
     * @return Customization
     */
    public function setOriginalBackendIP(string $originalBackendIP): Customization
    {
        $this->originalBackendIP = $originalBackendIP;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getType()
    {
        return $this->type;
    }

    /**
     * @param mixed $type
     * @return Customization
     */
    public function setType($type)
    {
        $this->type = $type;
        return $this;
    }

    /**
     * @return array|null
     */
    public function getAdditionalData(): ?array
    {
        return $this->additionalData;
    }

    /**
     * @param array|null $additionalData
     * @return Customization
     */
    public function setAdditionalData(?array $additionalData): Customization
    {
        $this->additionalData = $additionalData;
        return $this;
    }

    /**
     * @return bool
     */
    public function isSslAvailable(): bool
    {
        return $this->isSslAvailable;
    }

    /**
     * @param bool $isSslAvailable
     * @return Customization
     */
    public function setIsSslAvailable(bool $isSslAvailable): Customization
    {
        $this->isSslAvailable = $isSslAvailable;
        return $this;
    }

    /**
     * @return string
     */
    public function getCustomerIp(): string
    {
        return $this->customerIp;
    }

    /**
     * @param string $customerIp
     * @return Customization
     */
    public function setCustomerIp(string $customerIp): Customization
    {
        $this->customerIp = $customerIp;
        return $this;
    }

    /**
     * @return \DateTime
     */
    public function getDateCreated(): \DateTime
    {
        return $this->dateCreated;
    }

    /**
     * @param \DateTime $dateCreated
     * @return Customization
     */
    public function setDateCreated(\DateTime $dateCreated): Customization
    {
        $this->dateCreated = $dateCreated;
        return $this;
    }

    /**
     * @return int
     */
    public function getId(): int
    {
        return $this->id;
    }

    public function getChains()
    {
        return $this->chains;
    }

}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists