<?php

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

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for XDirectoryLookupDialRules StructType
 * @subpackage Structs
 */
class XDirectoryLookupDialRules extends AbstractStructBase
{
    /**
     * The name
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: false
     * @var string
     */
    public $name;
    /**
     * The numberOfDigits
     * Meta information extracted from the WSDL
     * - default: 0
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: false
     * @var string
     */
    public $numberOfDigits;
    /**
     * The digitsToBeRemoved
     * Meta information extracted from the WSDL
     * - default: 0
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: false
     * @var string
     */
    public $digitsToBeRemoved;
    /**
     * The priority
     * Meta information extracted from the WSDL
     * - default: 0
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: false
     * @var string
     */
    public $priority;
    /**
     * The description
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * - nillable: false
     * @var string
     */
    public $description;
    /**
     * The numberBeginWith
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * - nillable: false
     * @var string
     */
    public $numberBeginWith;
    /**
     * The prefixPattern
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * - nillable: false
     * @var string
     */
    public $prefixPattern;
    /**
     * Constructor method for XDirectoryLookupDialRules
     * @uses XDirectoryLookupDialRules::setName()
     * @uses XDirectoryLookupDialRules::setNumberOfDigits()
     * @uses XDirectoryLookupDialRules::setDigitsToBeRemoved()
     * @uses XDirectoryLookupDialRules::setPriority()
     * @uses XDirectoryLookupDialRules::setDescription()
     * @uses XDirectoryLookupDialRules::setNumberBeginWith()
     * @uses XDirectoryLookupDialRules::setPrefixPattern()
     * @param string $name
     * @param string $numberOfDigits
     * @param string $digitsToBeRemoved
     * @param string $priority
     * @param string $description
     * @param string $numberBeginWith
     * @param string $prefixPattern
     */
    public function __construct($name = null, $numberOfDigits = '0', $digitsToBeRemoved = '0', $priority = '0', $description = null, $numberBeginWith = null, $prefixPattern = null)
    {
        $this
            ->setName($name)
            ->setNumberOfDigits($numberOfDigits)
            ->setDigitsToBeRemoved($digitsToBeRemoved)
            ->setPriority($priority)
            ->setDescription($description)
            ->setNumberBeginWith($numberBeginWith)
            ->setPrefixPattern($prefixPattern);
    }
    /**
     * Get name value
     * @return string
     */
    public function getName()
    {
        return $this->name;
    }
    /**
     * Set name value
     * @param string $name
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setName($name = null)
    {
        $this->name = $name;
        return $this;
    }
    /**
     * Get numberOfDigits value
     * @return string
     */
    public function getNumberOfDigits()
    {
        return $this->numberOfDigits;
    }
    /**
     * Set numberOfDigits value
     * @param string $numberOfDigits
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setNumberOfDigits($numberOfDigits = '0')
    {
        $this->numberOfDigits = $numberOfDigits;
        return $this;
    }
    /**
     * Get digitsToBeRemoved value
     * @return string
     */
    public function getDigitsToBeRemoved()
    {
        return $this->digitsToBeRemoved;
    }
    /**
     * Set digitsToBeRemoved value
     * @param string $digitsToBeRemoved
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setDigitsToBeRemoved($digitsToBeRemoved = '0')
    {
        $this->digitsToBeRemoved = $digitsToBeRemoved;
        return $this;
    }
    /**
     * Get priority value
     * @return string
     */
    public function getPriority()
    {
        return $this->priority;
    }
    /**
     * Set priority value
     * @param string $priority
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setPriority($priority = '0')
    {
        $this->priority = $priority;
        return $this;
    }
    /**
     * Get description value
     * @return string|null
     */
    public function getDescription()
    {
        return $this->description;
    }
    /**
     * Set description value
     * @param string $description
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setDescription($description = null)
    {
        $this->description = $description;
        return $this;
    }
    /**
     * Get numberBeginWith value
     * @return string|null
     */
    public function getNumberBeginWith()
    {
        return $this->numberBeginWith;
    }
    /**
     * Set numberBeginWith value
     * @param string $numberBeginWith
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setNumberBeginWith($numberBeginWith = null)
    {
        $this->numberBeginWith = $numberBeginWith;
        return $this;
    }
    /**
     * Get prefixPattern value
     * @return string|null
     */
    public function getPrefixPattern()
    {
        return $this->prefixPattern;
    }
    /**
     * Set prefixPattern value
     * @param string $prefixPattern
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XDirectoryLookupDialRules
     */
    public function setPrefixPattern($prefixPattern = null)
    {
        $this->prefixPattern = $prefixPattern;
        return $this;
    }
}
