public function testAclCondition()
 {
     $condition = new AclCondition('testClass', 'id', array(1));
     $this->assertEquals('testClass', $condition->getEntityAlias());
     $this->assertEquals('id', $condition->getEntityField());
     $this->assertEquals(array(1), $condition->getValue());
     $condition->setEntityAlias('anotherClass');
     $condition->setEntityField('owner');
     $condition->setValue(array(2));
     $this->assertEquals('anotherClass', $condition->getEntityAlias());
     $this->assertEquals('owner', $condition->getEntityField());
     $this->assertEquals(array(2), $condition->getValue());
 }
示例#2
0
 public function testAclCondition()
 {
     $condition = new AclCondition('testClass', 'id', array(1));
     $this->assertEquals('testClass', $condition->getEntityAlias());
     $this->assertEquals('id', $condition->getEntityField());
     $this->assertEquals(array(1), $condition->getValue());
     $condition->setEntityAlias('anotherClass');
     $condition->setEntityField('owner');
     $condition->setValue(array(2));
     $this->assertEquals('anotherClass', $condition->getEntityAlias());
     $this->assertEquals('owner', $condition->getEntityField());
     $this->assertEquals(array(2), $condition->getValue());
     $this->assertEquals(PathExpression::TYPE_SINGLE_VALUED_ASSOCIATION, $condition->getPathExpressionType());
     $condition->setPathExpressionType(PathExpression::TYPE_COLLECTION_VALUED_ASSOCIATION);
     $this->assertEquals(PathExpression::TYPE_COLLECTION_VALUED_ASSOCIATION, $condition->getPathExpressionType());
 }
 /**
  * Get acl access level condition
  *
  * @param AclCondition $condition
  *
  * @return ConditionalPrimary
  */
 protected function getConditionalFactor(AclCondition $condition)
 {
     if ($condition->isIgnoreOwner()) {
         return null;
     }
     if ($condition->getValue() === null && $condition->getEntityField() === null) {
         $expression = $this->getAccessDeniedExpression();
     } else {
         $expression = $this->getInExpression($condition);
     }
     $resultCondition = new ConditionalPrimary();
     $resultCondition->simpleConditionalExpression = $expression;
     return $resultCondition;
 }
示例#4
0
 /**
  * Generate path expression
  *
  * @param AclCondition $whereCondition
  * @return PathExpression
  */
 protected function getPathExpression(AclCondition $whereCondition)
 {
     $pathExpression = new PathExpression(self::EXPECTED_TYPE, $whereCondition->getEntityAlias(), $whereCondition->getEntityField());
     $pathExpression->type = $whereCondition->getPathExpressionType();
     return $pathExpression;
 }
 /**
  * Generate path expression
  *
  * @param AclCondition $whereCondition
  * @return PathExpression
  */
 protected function getPathExpression(AclCondition $whereCondition)
 {
     $pathExpression = new PathExpression(self::EXPECTED_TYPE, $whereCondition->getEntityAlias(), $whereCondition->getEntityField());
     $pathExpression->type = PathExpression::TYPE_SINGLE_VALUED_ASSOCIATION;
     return $pathExpression;
 }