<?php

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

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for XIpPhoneServicesParameter StructType
 * @subpackage Structs
 */
class XIpPhoneServicesParameter extends AbstractStructBase
{
    /**
     * The name
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - maxLength: 50
     * - maxOccurs: 1
     * - minOccurs: 1
     * @var string
     */
    public $name;
    /**
     * The displayName
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - maxLength: 128
     * - maxOccurs: 1
     * - minOccurs: 1
     * @var string
     */
    public $displayName;
    /**
     * The description
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - maxLength: 255
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $description;
    /**
     * The default
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - maxLength: 255
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $default;
    /**
     * The paramRequired
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - default: true
     * - maxOccurs: 1
     * - minOccurs: 0
     * - pattern: (t)|(f)|(true)|(false)|(0)|(1)
     * @var string
     */
    public $paramRequired;
    /**
     * The paramPassword
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - default: false
     * - maxOccurs: 1
     * - minOccurs: 0
     * - pattern: (t)|(f)|(true)|(false)|(0)|(1)
     * @var string
     */
    public $paramPassword;
    /**
     * Constructor method for XIpPhoneServicesParameter
     * @uses XIpPhoneServicesParameter::setName()
     * @uses XIpPhoneServicesParameter::setDisplayName()
     * @uses XIpPhoneServicesParameter::setDescription()
     * @uses XIpPhoneServicesParameter::setDefault()
     * @uses XIpPhoneServicesParameter::setParamRequired()
     * @uses XIpPhoneServicesParameter::setParamPassword()
     * @param string $name
     * @param string $displayName
     * @param string $description
     * @param string $default
     * @param string $paramRequired
     * @param string $paramPassword
     */
    public function __construct($name = null, $displayName = null, $description = null, $default = null, $paramRequired = 'true', $paramPassword = 'false')
    {
        $this
            ->setName($name)
            ->setDisplayName($displayName)
            ->setDescription($description)
            ->setDefault($default)
            ->setParamRequired($paramRequired)
            ->setParamPassword($paramPassword);
    }
    /**
     * Get name value
     * @return string
     */
    public function getName()
    {
        return $this->name;
    }
    /**
     * Set name value
     * @param string $name
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XIpPhoneServicesParameter
     */
    public function setName($name = null)
    {
        $this->name = $name;
        return $this;
    }
    /**
     * Get displayName value
     * @return string
     */
    public function getDisplayName()
    {
        return $this->displayName;
    }
    /**
     * Set displayName value
     * @param string $displayName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XIpPhoneServicesParameter
     */
    public function setDisplayName($displayName = null)
    {
        $this->displayName = $displayName;
        return $this;
    }
    /**
     * Get description value
     * @return string
     */
    public function getDescription()
    {
        return $this->description;
    }
    /**
     * Set description value
     * @param string $description
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XIpPhoneServicesParameter
     */
    public function setDescription($description = null)
    {
        $this->description = $description;
        return $this;
    }
    /**
     * Get default value
     * @return string|null
     */
    public function getDefault()
    {
        return $this->default;
    }
    /**
     * Set default value
     * @param string $default
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XIpPhoneServicesParameter
     */
    public function setDefault($default = null)
    {
        $this->default = $default;
        return $this;
    }
    /**
     * Get paramRequired value
     * @return string|null
     */
    public function getParamRequired()
    {
        return $this->paramRequired;
    }
    /**
     * Set paramRequired value
     * @param string $paramRequired
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XIpPhoneServicesParameter
     */
    public function setParamRequired($paramRequired = 'true')
    {
        $this->paramRequired = $paramRequired;
        return $this;
    }
    /**
     * Get paramPassword value
     * @return string|null
     */
    public function getParamPassword()
    {
        return $this->paramPassword;
    }
    /**
     * Set paramPassword value
     * @param string $paramPassword
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XIpPhoneServicesParameter
     */
    public function setParamPassword($paramPassword = 'false')
    {
        $this->paramPassword = $paramPassword;
        return $this;
    }
}
