public function findAllByUser( $userId )
    {
        $select = $this->select()
                       ->join( 'user_right_x_user',
                               new Sql\Expression(
                                    '?.? = ?.? AND ?.? = ?',
                                    array(
                                        self::$tableName,
                                        'id',
                                        'user_right_x_user',
                                        'rightId',
                                        'user_right_x_user',
                                        'userId',
                                        $userId,
                                    ),
                                    array(
                                        Sql\Expression::TYPE_IDENTIFIER,
                                        Sql\Expression::TYPE_IDENTIFIER,
                                        Sql\Expression::TYPE_IDENTIFIER,
                                        Sql\Expression::TYPE_IDENTIFIER,
                                        Sql\Expression::TYPE_IDENTIFIER,
                                        Sql\Expression::TYPE_IDENTIFIER,
                                        Sql\Expression::TYPE_VALUE,
                                    )
                               ),
                               array(
                                   'granted' => 'userId'
                               ),
                               Sql\Select::JOIN_LEFT )
                        ->order( array(
                            'group'     => 'ASC',
                            'resource'  => 'ASC',
                            'privilege' => 'ASC',
                        ) );

        /* @var $result \Zend\Db\Adapter\Driver\ResultInterface */

        $return = array();
        $result = $this->sql()
                       ->prepareStatementForSqlObject( $select )
                       ->execute();

        foreach ( $result as $row )
        {
            $return[] = $this->selected( $row );
        }

        return $return;
    }