public function findAllByUserId( $userId )
    {
        $platform = $this->getDbAdapter()
                         ->getPlatform();

        /* @var $from \Zork\Db\Sql\TableIdentifier */
        $from = $this->getTableInSchema( 'user_right_x_user' );

        if ( $from instanceof TableIdentifier )
        {
            $from = $from->getIdentifierChain();
        }
        else
        {
            $from = (array) (string) $from;
        }

        return $this->findAll( array(
            new Expression( $platform->quoteIdentifier( 'id' ) . ' IN (
                SELECT ' . $platform->quoteIdentifier( 'rightId' ) . '
                  FROM ' . $platform->quoteIdentifierChain( $from ) . '
                 WHERE ' . $platform->quoteIdentifier( 'userId' ) . ' = ?
            )', $userId ),
        ) );
    }