def ex_update_redirect(self, redirect, redirect_to=None, name=None,
                           type=None, iframe=None, query=None):
        zone_id = redirect.zone.id
        r_json = {}
        if redirect_to is not None:
            r_json['redirect_to'] = redirect_to
        if name is not None:
            r_json['name'] = name
        if type is not None:
            r_json['record_type'] = type
        if iframe is not None:
            r_json['iframe_title'] = iframe
        if query is not None:
            r_json['redirect_query_string'] = query
        r_data = json.dumps({'zone_redirect': r_json})
        try:
            response = self.connection.request('/zones/%s/redirects/%s' %
                                               (zone_id, redirect.id),
                                               method='PUT', data=r_data)
        except (BaseHTTPError, MalformedResponseError):
            e = sys.exc_info()[1]
            if isinstance(e, MalformedResponseError) and e.body == 'Not found':
                raise PointDNSException(value='Couldn\'t found redirect',
                                        http_code=httplib.NOT_FOUND,
                                        driver=self)
            raise PointDNSException(value=e.message, http_code=e.code,
                                    driver=self)
        redirect = self._to_redirect(response.object, zone=redirect.zone)
        return redirect
text() -> QString
dataset/ETHPy150Open apache/libcloud/libcloud/dns/drivers/pointdns.py/PointDNSDriver.ex_update_redirect--crossover with--dataset/ETHPy150Open VisTrails/VisTrails/vistrails/gui/common_widgets.py/QStringEdit.text