<?php

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

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for LSyslogConfig StructType
 * @subpackage Structs
 */
class LSyslogConfig extends AbstractStructBase
{
    /**
     * The AlarmLevelEvent
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $AlarmLevelEvent;
    /**
     * The RemoteServerName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $RemoteServerName;
    /**
     * The monitor
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $monitor;
    /**
     * The Enable
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - minOccurs: 0
     * - pattern: (t)|(f)|(true)|(false)|(0)|(1)
     * @var string
     */
    public $Enable;
    /**
     * Constructor method for LSyslogConfig
     * @uses LSyslogConfig::setAlarmLevelEvent()
     * @uses LSyslogConfig::setRemoteServerName()
     * @uses LSyslogConfig::setMonitor()
     * @uses LSyslogConfig::setEnable()
     * @param string $alarmLevelEvent
     * @param string $remoteServerName
     * @param string $monitor
     * @param string $enable
     */
    public function __construct($alarmLevelEvent = null, $remoteServerName = null, $monitor = null, $enable = null)
    {
        $this
            ->setAlarmLevelEvent($alarmLevelEvent)
            ->setRemoteServerName($remoteServerName)
            ->setMonitor($monitor)
            ->setEnable($enable);
    }
    /**
     * Get AlarmLevelEvent value
     * @return string|null
     */
    public function getAlarmLevelEvent()
    {
        return $this->AlarmLevelEvent;
    }
    /**
     * Set AlarmLevelEvent value
     * @param string $alarmLevelEvent
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LSyslogConfig
     */
    public function setAlarmLevelEvent($alarmLevelEvent = null)
    {
        $this->AlarmLevelEvent = $alarmLevelEvent;
        return $this;
    }
    /**
     * Get RemoteServerName value
     * @return string|null
     */
    public function getRemoteServerName()
    {
        return $this->RemoteServerName;
    }
    /**
     * Set RemoteServerName value
     * @param string $remoteServerName
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LSyslogConfig
     */
    public function setRemoteServerName($remoteServerName = null)
    {
        $this->RemoteServerName = $remoteServerName;
        return $this;
    }
    /**
     * Get monitor value
     * @return string|null
     */
    public function getMonitor()
    {
        return $this->monitor;
    }
    /**
     * Set monitor value
     * @param string $monitor
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LSyslogConfig
     */
    public function setMonitor($monitor = null)
    {
        $this->monitor = $monitor;
        return $this;
    }
    /**
     * Get Enable value
     * @return string|null
     */
    public function getEnable()
    {
        return $this->Enable;
    }
    /**
     * Set Enable value
     * @param string $enable
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\LSyslogConfig
     */
    public function setEnable($enable = null)
    {
        $this->Enable = $enable;
        return $this;
    }
}
