private function updateAceIdentityMap(AclInterface $acl)
    {
        foreach (array('classAces', 'classFieldAces', 'objectAces', 'objectFieldAces') as $property) {
            $reflection = new \ReflectionProperty($acl, $property);
            $reflection->setAccessible(true);
            $value = $reflection->getValue($acl);

            if ('classAces' === $property || 'objectAces' === $property) {
                $this->doUpdateAceIdentityMap($value);
            } else {
                foreach ($value as $field => $aces) {
                    $this->doUpdateAceIdentityMap($value[$field]);
                }
            }

            $reflection->setValue($acl, $value);
            $reflection->setAccessible(false);
        }
    }
private function updateAceIdentityMap(AclInterface $acl)
    {
        foreach (array('classAces', 'classFieldAces', 'objectAces', 'objectFieldAces') as $property) {
            $reflection = new \ReflectionProperty($acl, $property);
            $reflection->setAccessible(true);
            $value = $reflection->getValue($acl);

            if ('classAces' === $property || 'objectAces' === $property) {
                $this->doUpdateAceIdentityMap($value);
            } else {
                foreach ($value as $field => $aces) {
                    $this->doUpdateAceIdentityMap($value[$field]);
                }
            }

            $reflection->setValue($acl, $value);
            $reflection->setAccessible(false);
        }
    }
private function updateAceIdentityMap ( AclInterface $ acl ) { foreach ( array ( 'classAces' , 'classFieldAces' , 'objectAces' , 'objectFieldAces' ) as $ property ) { $ reflection = new \ ReflectionProperty ( $ acl , $ property ) ; $ reflection -> setAccessible ( true ) ; $ value = $ reflection -> getValue ( $ acl ) ; if ( 'classAces' === $ property || 'objectAces' === $ property ) { $ this -> doUpdateAceIdentityMap ( $ value ) ; } else { foreach ( $ value as $ field => $ aces ) { $ this -> doUpdateAceIdentityMap ( $ value [ $ field ] ) ; } } $ reflection -> setValue ( $ acl , $ value ) ; $ reflection -> setAccessible ( false ) ; } }
This method is called when an ACL instance is retrieved from the cache.

@param AclInterface $acl
This method is called when an ACL instance is retrieved from the cache .