<?php
namespace Platform\SecurityBundle\Entity\Access;
use App\Entity\Shared\AliasableInterface;
use App\Entity\Shared\AliasableTrait;
use Cms\CoreBundle\Model\Interfaces\Fixable\FixableInterface;
use Cms\CoreBundle\Model\Interfaces\Fixable\FixableTrait;
use Cms\CoreBundle\Model\Interfaces\OneRosterable\OneRosterableInterface;
use Cms\CoreBundle\Model\Interfaces\OneRosterable\OneRosterableTrait;
use Cms\ImportBundle\Model\Interfaces\Importable\ImportableInterface;
use Cms\ImportBundle\Model\Interfaces\Importable\ImportableTrait;
use Cms\TenantBundle\Entity\TenantedEntity;
use Doctrine\ORM\Mapping as ORM;
use Platform\SecurityBundle\Entity\Identity\Account;
use Platform\SecurityBundle\Entity\Identity\Group;
/**
* Class GroupAccount
* @package Platform\SecurityBundle\Entity\Access
*
* @ORM\Entity(
* repositoryClass = "Platform\SecurityBundle\Doctrine\Access\GroupAccountRepository",
* )
* @ORM\Table(
* name = "cms__security__identity__group_account",
* )
*/
class GroupAccount extends TenantedEntity
implements
OneRosterableInterface,
ImportableInterface,
FixableInterface,
AliasableInterface
{
use OneRosterableTrait;
use ImportableTrait;
use FixableTrait;
use AliasableTrait;
/**
* @var Group
*
* @ORM\ManyToOne(targetEntity = "Platform\SecurityBundle\Entity\Identity\Group")
* @ORM\JoinColumn(name = "grp", referencedColumnName = "id", onDelete = "CASCADE")
*/
protected $group;
/**
* @var Account
*
* @ORM\ManyToOne(targetEntity = "Platform\SecurityBundle\Entity\Identity\Account")
* @ORM\JoinColumn(name = "account", referencedColumnName = "id", onDelete = "CASCADE")
*/
protected $account;
/**
* @return Group
*/
public function getGroup()
{
return $this->group;
}
/**
* @return Account
*/
public function getAccount()
{
return $this->account;
}
/**
* @param Group $value
* @return $this
*/
public function setGroup(Group $value)
{
$this->group = $value;
return $this;
}
/**
* @param Account $value
* @return $this
*/
public function setAccount(Account $value)
{
$this->account = $value;
return $this;
}
}