Neos\Flow\Security\Account::setRoles PHP Method

setRoles() public method

Sets the roles for this account
public setRoles ( array $roles ) : void
$roles array
return void
    public function setRoles(array $roles)
    {
        $this->roleIdentifiers = [];
        $this->roles = [];
        foreach ($roles as $role) {
            if (!$role instanceof Role) {
                throw new \InvalidArgumentException(sprintf('setRoles() only accepts an array of %s instances, given: "%s"', Role::class, gettype($role)), 1397125997);
            }
            $this->addRole($role);
        }
    }

Usage Example

 /**
  * @test
  */
 public function setRolesWorks()
 {
     $roles = [$this->administratorRole, $this->customerRole];
     $expectedRoles = [$this->administratorRole->getIdentifier() => $this->administratorRole, $this->customerRole->getIdentifier() => $this->customerRole];
     $this->account->setRoles($roles);
     $this->assertSame($expectedRoles, $this->account->getRoles());
 }
All Usage Examples Of Neos\Flow\Security\Account::setRoles