<?php

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

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for OXPhoneLine StructType
 * @subpackage Structs
 */
class OXPhoneLine extends AbstractStructBase
{
    /**
     * The dirn
     * Meta information extracted from the WSDL
     * - documentation: Only uuid attribute is returned in response
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXDirn
     */
    public $dirn;
    /**
     * The ringSetting
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $ringSetting;
    /**
     * The consecutiveRingSetting
     * Meta information extracted from the WSDL
     * - documentation: Consecutive Rings Setting. Replaces the consective ring setting on IPPhone.
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $consecutiveRingSetting;
    /**
     * The ringSettingIdlePickupAlert
     * Meta information extracted from the WSDL
     * - documentation: Applicable only for IP Phones
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $ringSettingIdlePickupAlert;
    /**
     * The ringSettingActivePickupAlert
     * Meta information extracted from the WSDL
     * - documentation: Applicable only for IP Phones
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $ringSettingActivePickupAlert;
    /**
     * The mwlPolicy
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $mwlPolicy;
    /**
     * The recordingProfileName
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $recordingProfileName;
    /**
     * The monitoringCssName
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $monitoringCssName;
    /**
     * The recordingFlag
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $recordingFlag;
    /**
     * The audibleMwi
     * Meta information extracted from the WSDL
     * - documentation: Not applicable for gatewayEndpointAnalogAccess and CiscoCatalyst600024PortFXSGateway
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $audibleMwi;
    /**
     * The partitionUsage
     * Meta information extracted from the WSDL
     * - documentation: This tag cannot be modified. It can only be specified in the add request.
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $partitionUsage;
    /**
     * The recordingMediaSource
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType
     */
    public $recordingMediaSource;
    /**
     * The ctiid
     * @var int
     */
    public $ctiid;
    /**
     * The uuid
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - pattern: \{........-....-....-....-............\}
     * @var string
     */
    public $uuid;
    /**
     * Constructor method for OXPhoneLine
     * @uses OXPhoneLine::setDirn()
     * @uses OXPhoneLine::setRingSetting()
     * @uses OXPhoneLine::setConsecutiveRingSetting()
     * @uses OXPhoneLine::setRingSettingIdlePickupAlert()
     * @uses OXPhoneLine::setRingSettingActivePickupAlert()
     * @uses OXPhoneLine::setMwlPolicy()
     * @uses OXPhoneLine::setRecordingProfileName()
     * @uses OXPhoneLine::setMonitoringCssName()
     * @uses OXPhoneLine::setRecordingFlag()
     * @uses OXPhoneLine::setAudibleMwi()
     * @uses OXPhoneLine::setPartitionUsage()
     * @uses OXPhoneLine::setRecordingMediaSource()
     * @uses OXPhoneLine::setCtiid()
     * @uses OXPhoneLine::setUuid()
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXDirn $dirn
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSetting
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $consecutiveRingSetting
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingIdlePickupAlert
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingActivePickupAlert
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $mwlPolicy
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingProfileName
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $monitoringCssName
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingFlag
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $audibleMwi
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $partitionUsage
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingMediaSource
     * @param int $ctiid
     * @param string $uuid
     */
    public function __construct(\\Losc\CucmBundle\Model\Webservice\StructType\OXDirn $dirn = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSetting = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $consecutiveRingSetting = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingIdlePickupAlert = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingActivePickupAlert = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $mwlPolicy = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingProfileName = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $monitoringCssName = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingFlag = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $audibleMwi = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $partitionUsage = null, \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingMediaSource = null, $ctiid = null, $uuid = null)
    {
        $this
            ->setDirn($dirn)
            ->setRingSetting($ringSetting)
            ->setConsecutiveRingSetting($consecutiveRingSetting)
            ->setRingSettingIdlePickupAlert($ringSettingIdlePickupAlert)
            ->setRingSettingActivePickupAlert($ringSettingActivePickupAlert)
            ->setMwlPolicy($mwlPolicy)
            ->setRecordingProfileName($recordingProfileName)
            ->setMonitoringCssName($monitoringCssName)
            ->setRecordingFlag($recordingFlag)
            ->setAudibleMwi($audibleMwi)
            ->setPartitionUsage($partitionUsage)
            ->setRecordingMediaSource($recordingMediaSource)
            ->setCtiid($ctiid)
            ->setUuid($uuid);
    }
    /**
     * Get dirn value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXDirn|null
     */
    public function getDirn()
    {
        return $this->dirn;
    }
    /**
     * Set dirn value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXDirn $dirn
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setDirn(\\Losc\CucmBundle\Model\Webservice\StructType\OXDirn $dirn = null)
    {
        $this->dirn = $dirn;
        return $this;
    }
    /**
     * Get ringSetting value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getRingSetting()
    {
        return $this->ringSetting;
    }
    /**
     * Set ringSetting value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSetting
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setRingSetting(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSetting = null)
    {
        $this->ringSetting = $ringSetting;
        return $this;
    }
    /**
     * Get consecutiveRingSetting value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getConsecutiveRingSetting()
    {
        return $this->consecutiveRingSetting;
    }
    /**
     * Set consecutiveRingSetting value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $consecutiveRingSetting
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setConsecutiveRingSetting(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $consecutiveRingSetting = null)
    {
        $this->consecutiveRingSetting = $consecutiveRingSetting;
        return $this;
    }
    /**
     * Get ringSettingIdlePickupAlert value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getRingSettingIdlePickupAlert()
    {
        return $this->ringSettingIdlePickupAlert;
    }
    /**
     * Set ringSettingIdlePickupAlert value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingIdlePickupAlert
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setRingSettingIdlePickupAlert(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingIdlePickupAlert = null)
    {
        $this->ringSettingIdlePickupAlert = $ringSettingIdlePickupAlert;
        return $this;
    }
    /**
     * Get ringSettingActivePickupAlert value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getRingSettingActivePickupAlert()
    {
        return $this->ringSettingActivePickupAlert;
    }
    /**
     * Set ringSettingActivePickupAlert value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingActivePickupAlert
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setRingSettingActivePickupAlert(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $ringSettingActivePickupAlert = null)
    {
        $this->ringSettingActivePickupAlert = $ringSettingActivePickupAlert;
        return $this;
    }
    /**
     * Get mwlPolicy value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getMwlPolicy()
    {
        return $this->mwlPolicy;
    }
    /**
     * Set mwlPolicy value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $mwlPolicy
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setMwlPolicy(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $mwlPolicy = null)
    {
        $this->mwlPolicy = $mwlPolicy;
        return $this;
    }
    /**
     * Get recordingProfileName value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getRecordingProfileName()
    {
        return $this->recordingProfileName;
    }
    /**
     * Set recordingProfileName value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingProfileName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setRecordingProfileName(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingProfileName = null)
    {
        $this->recordingProfileName = $recordingProfileName;
        return $this;
    }
    /**
     * Get monitoringCssName value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getMonitoringCssName()
    {
        return $this->monitoringCssName;
    }
    /**
     * Set monitoringCssName value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $monitoringCssName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setMonitoringCssName(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $monitoringCssName = null)
    {
        $this->monitoringCssName = $monitoringCssName;
        return $this;
    }
    /**
     * Get recordingFlag value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getRecordingFlag()
    {
        return $this->recordingFlag;
    }
    /**
     * Set recordingFlag value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingFlag
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setRecordingFlag(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingFlag = null)
    {
        $this->recordingFlag = $recordingFlag;
        return $this;
    }
    /**
     * Get audibleMwi value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getAudibleMwi()
    {
        return $this->audibleMwi;
    }
    /**
     * Set audibleMwi value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $audibleMwi
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setAudibleMwi(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $audibleMwi = null)
    {
        $this->audibleMwi = $audibleMwi;
        return $this;
    }
    /**
     * Get partitionUsage value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getPartitionUsage()
    {
        return $this->partitionUsage;
    }
    /**
     * Set partitionUsage value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $partitionUsage
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setPartitionUsage(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $partitionUsage = null)
    {
        $this->partitionUsage = $partitionUsage;
        return $this;
    }
    /**
     * Get recordingMediaSource value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType|null
     */
    public function getRecordingMediaSource()
    {
        return $this->recordingMediaSource;
    }
    /**
     * Set recordingMediaSource value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingMediaSource
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setRecordingMediaSource(\\Losc\CucmBundle\Model\Webservice\StructType\OXFkType $recordingMediaSource = null)
    {
        $this->recordingMediaSource = $recordingMediaSource;
        return $this;
    }
    /**
     * Get ctiid value
     * @return int|null
     */
    public function getCtiid()
    {
        return $this->ctiid;
    }
    /**
     * Set ctiid value
     * @param int $ctiid
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\OXPhoneLine
     */
    public function setCtiid($ctiid = null)
    {
        $this->ctiid = $ctiid;
        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\OXPhoneLine
     */
    public function setUuid($uuid = null)
    {
        $this->uuid = $uuid;
        return $this;
    }
}
