for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Omatech\Mage\Core\Domains\Shared\Traits;
use Omatech\Mage\Core\Domains\Roles\Contracts\RoleInterface;
use Omatech\Mage\Core\Domains\Roles\Exceptions\RoleIsNotSavedException;
use Omatech\Mage\Core\Domains\Roles\RoleModel;
trait RolesManager
{
private $roles = [];
/**
* @return mixed
*/
abstract public function getRoles();
* @param RoleInterface $role
* @return self
* @throws RoleIsNotSavedException
public function assignRole(RoleInterface $role)
$this->roles = (new RoleModel())
->assignRole($this->getRoles(), $role);
return $this;
}
* @param array $roles
public function assignRoles(array $roles)
->assignRoles($this->getRoles(), $roles);
public function removeRole(RoleInterface $role)
->removeRole($this->getRoles(), $role);
public function removeRoles(array $roles)
->removeRoles($this->getRoles(), $roles);