<?php

namespace \Losc\CucmBundle\Model\Webservice\StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for LDhcpServer StructType
 * @subpackage Structs
 */
class LDhcpServer extends AbstractStructBase
{
    /**
     * The processNodeName
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\XFkType
     */
    public $processNodeName;
    /**
     * The primaryDnsIpAddress
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $primaryDnsIpAddress;
    /**
     * The secondaryDnsIpAddress
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $secondaryDnsIpAddress;
    /**
     * The primaryTftpServerIpAddress
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $primaryTftpServerIpAddress;
    /**
     * The secondaryTftpServerIpAddress
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $secondaryTftpServerIpAddress;
    /**
     * The bootstrapServerIpAddress
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $bootstrapServerIpAddress;
    /**
     * The domainName
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $domainName;
    /**
     * The tftpServerName
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $tftpServerName;
    /**
     * The arpCacheTimeout
     * Meta information extracted from the WSDL
     * - documentation: The valid values ranges from 0 to 1073741824.
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $arpCacheTimeout;
    /**
     * The ipAddressLeaseTime
     * Meta information extracted from the WSDL
     * - documentation: The valid values ranges from 0 to 1073741824.
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $ipAddressLeaseTime;
    /**
     * The renewalTime
     * Meta information extracted from the WSDL
     * - documentation: The valid values ranges from 0 to 1073741824.
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $renewalTime;
    /**
     * The rebindingTime
     * Meta information extracted from the WSDL
     * - documentation: The valid values ranges from 0 to 1073741824.
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $rebindingTime;
    /**
     * The uuid
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - pattern: \{........-....-....-....-............\}
     * @var string
     */
    public $uuid;
    /**
     * Constructor method for LDhcpServer
     * @uses LDhcpServer::setProcessNodeName()
     * @uses LDhcpServer::setPrimaryDnsIpAddress()
     * @uses LDhcpServer::setSecondaryDnsIpAddress()
     * @uses LDhcpServer::setPrimaryTftpServerIpAddress()
     * @uses LDhcpServer::setSecondaryTftpServerIpAddress()
     * @uses LDhcpServer::setBootstrapServerIpAddress()
     * @uses LDhcpServer::setDomainName()
     * @uses LDhcpServer::setTftpServerName()
     * @uses LDhcpServer::setArpCacheTimeout()
     * @uses LDhcpServer::setIpAddressLeaseTime()
     * @uses LDhcpServer::setRenewalTime()
     * @uses LDhcpServer::setRebindingTime()
     * @uses LDhcpServer::setUuid()
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\XFkType $processNodeName
     * @param string $primaryDnsIpAddress
     * @param string $secondaryDnsIpAddress
     * @param string $primaryTftpServerIpAddress
     * @param string $secondaryTftpServerIpAddress
     * @param string $bootstrapServerIpAddress
     * @param string $domainName
     * @param string $tftpServerName
     * @param string $arpCacheTimeout
     * @param string $ipAddressLeaseTime
     * @param string $renewalTime
     * @param string $rebindingTime
     * @param string $uuid
     */
    public function __construct(\\Losc\CucmBundle\Model\Webservice\StructType\XFkType $processNodeName = null, $primaryDnsIpAddress = null, $secondaryDnsIpAddress = null, $primaryTftpServerIpAddress = null, $secondaryTftpServerIpAddress = null, $bootstrapServerIpAddress = null, $domainName = null, $tftpServerName = null, $arpCacheTimeout = null, $ipAddressLeaseTime = null, $renewalTime = null, $rebindingTime = null, $uuid = null)
    {
        $this
            ->setProcessNodeName($processNodeName)
            ->setPrimaryDnsIpAddress($primaryDnsIpAddress)
            ->setSecondaryDnsIpAddress($secondaryDnsIpAddress)
            ->setPrimaryTftpServerIpAddress($primaryTftpServerIpAddress)
            ->setSecondaryTftpServerIpAddress($secondaryTftpServerIpAddress)
            ->setBootstrapServerIpAddress($bootstrapServerIpAddress)
            ->setDomainName($domainName)
            ->setTftpServerName($tftpServerName)
            ->setArpCacheTimeout($arpCacheTimeout)
            ->setIpAddressLeaseTime($ipAddressLeaseTime)
            ->setRenewalTime($renewalTime)
            ->setRebindingTime($rebindingTime)
            ->setUuid($uuid);
    }
    /**
     * Get processNodeName value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XFkType|null
     */
    public function getProcessNodeName()
    {
        return $this->processNodeName;
    }
    /**
     * Set processNodeName value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\XFkType $processNodeName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setProcessNodeName(\\Losc\CucmBundle\Model\Webservice\StructType\XFkType $processNodeName = null)
    {
        $this->processNodeName = $processNodeName;
        return $this;
    }
    /**
     * Get primaryDnsIpAddress value
     * @return string|null
     */
    public function getPrimaryDnsIpAddress()
    {
        return $this->primaryDnsIpAddress;
    }
    /**
     * Set primaryDnsIpAddress value
     * @param string $primaryDnsIpAddress
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setPrimaryDnsIpAddress($primaryDnsIpAddress = null)
    {
        $this->primaryDnsIpAddress = $primaryDnsIpAddress;
        return $this;
    }
    /**
     * Get secondaryDnsIpAddress value
     * @return string|null
     */
    public function getSecondaryDnsIpAddress()
    {
        return $this->secondaryDnsIpAddress;
    }
    /**
     * Set secondaryDnsIpAddress value
     * @param string $secondaryDnsIpAddress
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setSecondaryDnsIpAddress($secondaryDnsIpAddress = null)
    {
        $this->secondaryDnsIpAddress = $secondaryDnsIpAddress;
        return $this;
    }
    /**
     * Get primaryTftpServerIpAddress value
     * @return string|null
     */
    public function getPrimaryTftpServerIpAddress()
    {
        return $this->primaryTftpServerIpAddress;
    }
    /**
     * Set primaryTftpServerIpAddress value
     * @param string $primaryTftpServerIpAddress
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setPrimaryTftpServerIpAddress($primaryTftpServerIpAddress = null)
    {
        $this->primaryTftpServerIpAddress = $primaryTftpServerIpAddress;
        return $this;
    }
    /**
     * Get secondaryTftpServerIpAddress value
     * @return string|null
     */
    public function getSecondaryTftpServerIpAddress()
    {
        return $this->secondaryTftpServerIpAddress;
    }
    /**
     * Set secondaryTftpServerIpAddress value
     * @param string $secondaryTftpServerIpAddress
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setSecondaryTftpServerIpAddress($secondaryTftpServerIpAddress = null)
    {
        $this->secondaryTftpServerIpAddress = $secondaryTftpServerIpAddress;
        return $this;
    }
    /**
     * Get bootstrapServerIpAddress value
     * @return string|null
     */
    public function getBootstrapServerIpAddress()
    {
        return $this->bootstrapServerIpAddress;
    }
    /**
     * Set bootstrapServerIpAddress value
     * @param string $bootstrapServerIpAddress
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setBootstrapServerIpAddress($bootstrapServerIpAddress = null)
    {
        $this->bootstrapServerIpAddress = $bootstrapServerIpAddress;
        return $this;
    }
    /**
     * Get domainName value
     * @return string|null
     */
    public function getDomainName()
    {
        return $this->domainName;
    }
    /**
     * Set domainName value
     * @param string $domainName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setDomainName($domainName = null)
    {
        $this->domainName = $domainName;
        return $this;
    }
    /**
     * Get tftpServerName value
     * @return string|null
     */
    public function getTftpServerName()
    {
        return $this->tftpServerName;
    }
    /**
     * Set tftpServerName value
     * @param string $tftpServerName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setTftpServerName($tftpServerName = null)
    {
        $this->tftpServerName = $tftpServerName;
        return $this;
    }
    /**
     * Get arpCacheTimeout value
     * @return string|null
     */
    public function getArpCacheTimeout()
    {
        return $this->arpCacheTimeout;
    }
    /**
     * Set arpCacheTimeout value
     * @param string $arpCacheTimeout
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setArpCacheTimeout($arpCacheTimeout = null)
    {
        $this->arpCacheTimeout = $arpCacheTimeout;
        return $this;
    }
    /**
     * Get ipAddressLeaseTime value
     * @return string|null
     */
    public function getIpAddressLeaseTime()
    {
        return $this->ipAddressLeaseTime;
    }
    /**
     * Set ipAddressLeaseTime value
     * @param string $ipAddressLeaseTime
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setIpAddressLeaseTime($ipAddressLeaseTime = null)
    {
        $this->ipAddressLeaseTime = $ipAddressLeaseTime;
        return $this;
    }
    /**
     * Get renewalTime value
     * @return string|null
     */
    public function getRenewalTime()
    {
        return $this->renewalTime;
    }
    /**
     * Set renewalTime value
     * @param string $renewalTime
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setRenewalTime($renewalTime = null)
    {
        $this->renewalTime = $renewalTime;
        return $this;
    }
    /**
     * Get rebindingTime value
     * @return string|null
     */
    public function getRebindingTime()
    {
        return $this->rebindingTime;
    }
    /**
     * Set rebindingTime value
     * @param string $rebindingTime
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setRebindingTime($rebindingTime = null)
    {
        $this->rebindingTime = $rebindingTime;
        return $this;
    }
    /**
     * Get uuid value
     * @return string|null
     */
    public function getUuid()
    {
        return $this->uuid;
    }
    /**
     * Set uuid value
     * @param string $uuid
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LDhcpServer
     */
    public function setUuid($uuid = null)
    {
        $this->uuid = $uuid;
        return $this;
    }
}
