<?php

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

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for presenceGroups StructType
 * @subpackage Structs
 */
class PresenceGroups extends AbstractStructBase
{
    /**
     * The presenceGroup
     * Meta information extracted from the WSDL
     * - maxOccurs: unbounded
     * - minOccurs: 0
     * @var \\Losc\CucmBundle\Model\Webservice\StructType\XPresenceGroupMember[]
     */
    public $presenceGroup;
    /**
     * Constructor method for presenceGroups
     * @uses PresenceGroups::setPresenceGroup()
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\XPresenceGroupMember[] $presenceGroup
     */
    public function __construct(array $presenceGroup = array())
    {
        $this
            ->setPresenceGroup($presenceGroup);
    }
    /**
     * Get presenceGroup value
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\XPresenceGroupMember[]|null
     */
    public function getPresenceGroup()
    {
        return $this->presenceGroup;
    }
    /**
     * Set presenceGroup value
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\XPresenceGroupMember[] $presenceGroup
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\PresenceGroups
     */
    public function setPresenceGroup(array $presenceGroup = array())
    {
        $this->presenceGroup = $presenceGroup;
        return $this;
    }
    /**
     * Add item to presenceGroup value
     * @throws \InvalidArgumentException
     * @param \\Losc\CucmBundle\Model\Webservice\StructType\XPresenceGroupMember $item
     * @return \\Losc\CucmBundle\Model\Webservice\StructType\PresenceGroups
     */
    public function addToPresenceGroup(\\Losc\CucmBundle\Model\Webservice\StructType\XPresenceGroupMember $item)
    {
        $this->presenceGroup[] = $item;
        return $this;
    }
}
