public function testGetConst() { $this->assertEquals(AccessLevel::NONE_LEVEL, AccessLevel::getConst('NONE_LEVEL')); $this->assertEquals(AccessLevel::BASIC_LEVEL, AccessLevel::getConst('BASIC_LEVEL')); $this->assertEquals(AccessLevel::LOCAL_LEVEL, AccessLevel::getConst('LOCAL_LEVEL')); $this->assertEquals(AccessLevel::DEEP_LEVEL, AccessLevel::getConst('DEEP_LEVEL')); $this->assertEquals(AccessLevel::GLOBAL_LEVEL, AccessLevel::getConst('GLOBAL_LEVEL')); $this->assertEquals(AccessLevel::SYSTEM_LEVEL, AccessLevel::getConst('SYSTEM_LEVEL')); }
/** * {@inheritdoc} */ public function getAccessLevel($mask, $permission = null, $object = null) { if (0 === $this->removeServiceBits($mask)) { return AccessLevel::NONE_LEVEL; } $identity = $this->getServiceBits($mask); if ($permission !== null) { $permissionMask = $this->getMaskBuilderConst($identity, 'GROUP_' . $permission); $mask = $mask & $permissionMask; } $result = AccessLevel::NONE_LEVEL; foreach (AccessLevel::$allAccessLevelNames as $accessLevel) { if (0 !== ($mask & $this->getMaskBuilderConst($identity, 'GROUP_' . $accessLevel))) { $result = AccessLevel::getConst($accessLevel . '_LEVEL'); } } return $this->metadataProvider->getMaxAccessLevel($result, $this->getObjectClassName($object)); }