)]}'
{"openstack_dashboard/dashboards/project/loadbalancers/workflows.py":[{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c93d1df54f0ea4fc5febc94af35f06ab8bc7942c","unresolved":false,"context_lines":[{"line_number":526,"context_line":"class MonitorMixin():"},{"line_number":527,"context_line":""},{"line_number":528,"context_line":"    def _get_monitor_display_name(self, monitor):"},{"line_number":529,"context_line":"        d \u003d monitor.__dict__[\u0027_apidict\u0027]"},{"line_number":530,"context_line":"        if d[\u0027type\u0027] in [\u0027HTTP\u0027, \u0027HTTPS\u0027]:"},{"line_number":531,"context_line":"            name \u003d (\"%(type)s url:%(url_path)s \""},{"line_number":532,"context_line":"                    \"method:%(http_method)s codes:%(expected_codes)s \""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B%2BLU%3D","line":529,"updated":"2013-11-17 19:16:37.000000000","message":"I don\u0027t think it is a good idea to access the internal object of NeutronAPIResourceWrapper. For example, can\u0027t we use monitor.type instead of d[\u0027type\u0027] below?","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":6447,"name":"Avishay Balderman","email":"avishayb@radware.com","username":"avishayb"},"change_message_id":"66490d9162ea7b1cbbe957a2d94ef5d214f4c15a","unresolved":false,"context_lines":[{"line_number":526,"context_line":"class MonitorMixin():"},{"line_number":527,"context_line":""},{"line_number":528,"context_line":"    def _get_monitor_display_name(self, monitor):"},{"line_number":529,"context_line":"        d \u003d monitor.__dict__[\u0027_apidict\u0027]"},{"line_number":530,"context_line":"        if d[\u0027type\u0027] in [\u0027HTTP\u0027, \u0027HTTPS\u0027]:"},{"line_number":531,"context_line":"            name \u003d (\"%(type)s url:%(url_path)s \""},{"line_number":532,"context_line":"                    \"method:%(http_method)s codes:%(expected_codes)s \""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B8z4%3D","line":529,"in_reply_to":"AAAATn%2F%2B%2BLU%3D","updated":"2013-11-18 09:06:36.000000000","message":"OK","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c93d1df54f0ea4fc5febc94af35f06ab8bc7942c","unresolved":false,"context_lines":[{"line_number":536,"context_line":"            name \u003d (\"%(type)s delay:%(delay)d \""},{"line_number":537,"context_line":"                    \"retries:%(max_retries)d \""},{"line_number":538,"context_line":"                    \"timeout:%(timeout)d\")"},{"line_number":539,"context_line":"        return _(name % d)"},{"line_number":540,"context_line":""},{"line_number":541,"context_line":""},{"line_number":542,"context_line":"class AddPMAssociationAction(workflows.Action, MonitorMixin):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B%2BK8%3D","line":539,"updated":"2013-11-17 19:16:37.000000000","message":"It is not valid usage of _. Please consider:\n\n  if ....:\n      name \u003d _(....)\n  else:\n      name \u003d _(\"%(type)s delay:%(delay)d \"\n               \"retries:%(max_retries)d \"\n               \"timeout:%(timeout)d\")\n   return name % d","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":6447,"name":"Avishay Balderman","email":"avishayb@radware.com","username":"avishayb"},"change_message_id":"66490d9162ea7b1cbbe957a2d94ef5d214f4c15a","unresolved":false,"context_lines":[{"line_number":536,"context_line":"            name \u003d (\"%(type)s delay:%(delay)d \""},{"line_number":537,"context_line":"                    \"retries:%(max_retries)d \""},{"line_number":538,"context_line":"                    \"timeout:%(timeout)d\")"},{"line_number":539,"context_line":"        return _(name % d)"},{"line_number":540,"context_line":""},{"line_number":541,"context_line":""},{"line_number":542,"context_line":"class AddPMAssociationAction(workflows.Action, MonitorMixin):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B8zU%3D","line":539,"in_reply_to":"AAAATn%2F%2B%2BK8%3D","updated":"2013-11-18 09:06:36.000000000","message":"OK","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c93d1df54f0ea4fc5febc94af35f06ab8bc7942c","unresolved":false,"context_lines":[{"line_number":556,"context_line":"                if m.id not in context[\u0027pool_monitors\u0027]:"},{"line_number":557,"context_line":"                    display_name \u003d self._get_monitor_display_name(m)"},{"line_number":558,"context_line":"                    monitor_id_choices.append((m.id,"},{"line_number":559,"context_line":"                                               display_name))"},{"line_number":560,"context_line":"        except Exception:"},{"line_number":561,"context_line":"            exceptions.handle(request,"},{"line_number":562,"context_line":"                              _(\u0027Unable to retrieve monitors list.\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B%2BKM%3D","line":559,"updated":"2013-11-17 19:16:37.000000000","message":"No need to wrap a line.","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":6447,"name":"Avishay Balderman","email":"avishayb@radware.com","username":"avishayb"},"change_message_id":"66490d9162ea7b1cbbe957a2d94ef5d214f4c15a","unresolved":false,"context_lines":[{"line_number":556,"context_line":"                if m.id not in context[\u0027pool_monitors\u0027]:"},{"line_number":557,"context_line":"                    display_name \u003d self._get_monitor_display_name(m)"},{"line_number":558,"context_line":"                    monitor_id_choices.append((m.id,"},{"line_number":559,"context_line":"                                               display_name))"},{"line_number":560,"context_line":"        except Exception:"},{"line_number":561,"context_line":"            exceptions.handle(request,"},{"line_number":562,"context_line":"                              _(\u0027Unable to retrieve monitors list.\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B8zM%3D","line":559,"in_reply_to":"AAAATn%2F%2B%2BKM%3D","updated":"2013-11-18 09:06:36.000000000","message":"OK","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c93d1df54f0ea4fc5febc94af35f06ab8bc7942c","unresolved":false,"context_lines":[{"line_number":612,"context_line":"                                           context[\u0027pool_name\u0027])"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"        monitor_id_choices \u003d [(\u0027\u0027, _(\"Select a Monitor\"))]"},{"line_number":615,"context_line":"        monitors \u003d api.lbaas.pool_health_monitors_get(request)"},{"line_number":616,"context_line":"        try:"},{"line_number":617,"context_line":"            for m in monitors:"},{"line_number":618,"context_line":"                if m.id in context[\u0027pool_monitors\u0027]:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B%2BKE%3D","line":615,"updated":"2013-11-17 19:16:37.000000000","message":"L.615 should be inside of try clause.\n\nNeed to add tenant_id filter to the API request.\n\n  pool_health_monitors_get(request, tenant_id\u003drequest.user.tenant_id)\n\nIt is a related review: https://review.openstack.org/#/c/54242/","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"},{"author":{"_account_id":6447,"name":"Avishay Balderman","email":"avishayb@radware.com","username":"avishayb"},"change_message_id":"66490d9162ea7b1cbbe957a2d94ef5d214f4c15a","unresolved":false,"context_lines":[{"line_number":612,"context_line":"                                           context[\u0027pool_name\u0027])"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"        monitor_id_choices \u003d [(\u0027\u0027, _(\"Select a Monitor\"))]"},{"line_number":615,"context_line":"        monitors \u003d api.lbaas.pool_health_monitors_get(request)"},{"line_number":616,"context_line":"        try:"},{"line_number":617,"context_line":"            for m in monitors:"},{"line_number":618,"context_line":"                if m.id in context[\u0027pool_monitors\u0027]:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2B8zA%3D","line":615,"in_reply_to":"AAAATn%2F%2B%2BKE%3D","updated":"2013-11-18 09:06:36.000000000","message":"OK","commit_id":"c3b3b3e426bb399d6b6cc1da848225859a33df64"}]}
