mirror of
https://github.com/torrentpier/torrentpier-lts.git
synced 2025-02-28 15:10:54 +03:00
58 lines
1.2 KiB
PHP
58 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* Zend Framework (http://framework.zend.com/)
|
|
*
|
|
* @link http://github.com/zendframework/zf2 for the canonical source repository
|
|
* @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
|
|
* @license http://framework.zend.com/license/new-bsd New BSD License
|
|
*/
|
|
|
|
namespace Zend\Permissions\Rbac;
|
|
|
|
use RecursiveIterator;
|
|
|
|
interface RoleInterface extends RecursiveIterator
|
|
{
|
|
/**
|
|
* Get the name of the role.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getName();
|
|
|
|
/**
|
|
* Add permission to the role.
|
|
*
|
|
* @param $name
|
|
* @return RoleInterface
|
|
*/
|
|
public function addPermission($name);
|
|
|
|
/**
|
|
* Checks if a permission exists for this role or any child roles.
|
|
*
|
|
* @param string $name
|
|
* @return bool
|
|
*/
|
|
public function hasPermission($name);
|
|
|
|
/**
|
|
* Add a child.
|
|
*
|
|
* @param RoleInterface|string $child
|
|
* @return Role
|
|
*/
|
|
public function addChild($child);
|
|
|
|
/**
|
|
* @param RoleInterface $parent
|
|
* @return RoleInterface
|
|
*/
|
|
public function setParent($parent);
|
|
|
|
/**
|
|
* @return null|RoleInterface
|
|
*/
|
|
public function getParent();
|
|
}
|