public function transform($ace)
    {
        $sid = null;
        $mask = null;

        $sidPrefix = '';
        $sidName = '';
        $permissions = array();

        if($ace instanceof Entry) {
            $sid = $ace->getSecurityIdentity();
            $mask = $ace->getMask();
        } elseif(is_array($ace)) {
            $sid = $ace['sid'];
            $mask = $ace['mask'];
        }

        $sidString = '';
        if($sid instanceof RoleSecurityIdentity) {
            $sidPrefix = 'r';
            $sidName = $sid->getRole();
            $sidString = sprintf('%s:%s', $sidPrefix, $sidName);
        } elseif($sid instanceof UserSecurityIdentity) {
            $sidPrefix = 'u';
            $sidName = $sid->getUsername();
            $sidClass = $sid->getClass();
            $sidString = sprintf('%s:%s:%s', $sidPrefix, $sidName, $sidClass);
        }

        for($i = 1; $i <= 30; $i++) {
                $key = 1 << ($i-1);
                if($mask & $key) {
                    $permissions[$i] = true;
                } else {
                    $permissions[$i] = false;
                }
        }

        return array(
            'sid' => $sidString,
            'permissions' => $permissions);
    }
public function transform($ace)
    {
        $sid = null;
        $mask = null;

        $sidPrefix = '';
        $sidName = '';
        $permissions = array();

        if($ace instanceof Entry) {
            $sid = $ace->getSecurityIdentity();
            $mask = $ace->getMask();
        } elseif(is_array($ace)) {
            $sid = $ace['sid'];
            $mask = $ace['mask'];
        }

        $sidString = '';
        if($sid instanceof RoleSecurityIdentity) {
            $sidPrefix = 'r';
            $sidName = $sid->getRole();
            $sidString = sprintf('%s:%s', $sidPrefix, $sidName);
        } elseif($sid instanceof UserSecurityIdentity) {
            $sidPrefix = 'u';
            $sidName = $sid->getUsername();
            $sidClass = $sid->getClass();
            $sidString = sprintf('%s:%s:%s', $sidPrefix, $sidName, $sidClass);
        }

        for($i = 1; $i <= 30; $i++) {
                $key = 1 << ($i-1);
                if($mask & $key) {
                    $permissions[$i] = true;
                } else {
                    $permissions[$i] = false;
                }
        }

        return array(
            'sid' => $sidString,
            'permissions' => $permissions);
    }
public function transform ( $ ace ) { $ sid = null ; $ mask = null ; $ sidPrefix = '' ; $ sidName = '' ; $ permissions = array ( ) ; if ( $ ace instanceof Entry ) { $ sid = $ ace -> getSecurityIdentity ( ) ; $ mask = $ ace -> getMask ( ) ; } elseif ( is_array ( $ ace ) ) { $ sid = $ ace [ 'sid' ] ; $ mask = $ ace [ 'mask' ] ; } $ sidString = '' ; if ( $ sid instanceof RoleSecurityIdentity ) { $ sidPrefix = 'r' ; $ sidName = $ sid -> getRole ( ) ; $ sidString = sprintf ( '%s:%s' , $ sidPrefix , $ sidName ) ; } elseif ( $ sid instanceof UserSecurityIdentity ) { $ sidPrefix = 'u' ; $ sidName = $ sid -> getUsername ( ) ; $ sidClass = $ sid -> getClass ( ) ; $ sidString = sprintf ( '%s:%s:%s' , $ sidPrefix , $ sidName , $ sidClass ) ; } for ( $ i = 1 ; $ i <= 30 ; $ i ++ ) { $ key = 1 << ( $ i - 1 ) ; if ( $ mask & $ key ) { $ permissions [ $ i ] = true ; } else { $ permissions [ $ i ] = false ; } } return array ( 'sid' => $ sidString , 'permissions' => $ permissions ) ; }
Transforms an single ACE to an object suitable for ACEType

@param ace $ace
@return object
Transforms an single ACE to an object suitable for ACEType