)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP: Implementation of Virtual Fabric Suport for Brocade FC SAN"},{"line_number":8,"context_line":"switches."},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Blueprint https://blueprints.launchpad.net/cinder/+spec/brocade-zone-driver-virtualfabrics-support"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I503edfb4f52b94e172d5671d727c75aa0ca6f6e1"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a930d6b_c2ed02b9","line":9,"updated":"2015-01-25 17:30:47.000000000","message":"Can you add a short description about what this patch is trying to accomplish?","commit_id":"3a36567f076f206272e06564b30699a0afe24406"}],"cinder/zonemanager/drivers/brocade/brcd_fabric_opts.py":[{"author":{"_account_id":6043,"name":"Kurt Martin","email":"kurt.f.martin@hpe.com","username":"kurt-f-martin"},"change_message_id":"bd11aa8115a3bb848f3237b9ad3d190f5aa4beb9","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    cfg.StrOpt(\u0027fc_southbound_connector\u0027,"},{"line_number":25,"context_line":"               default\u003dNone,"},{"line_number":26,"context_line":"               help\u003d\u0027South bound connector for the fabric\u0027),"},{"line_number":27,"context_line":"    cfg.BoolOpt(\u0027fc_secure\u0027,"},{"line_number":28,"context_line":"                default\u003dTrue,"},{"line_number":29,"context_line":"                help\u003d\u0027Fabric Connection mode\u0027),"}],"source_content_type":"text/x-python","patch_set":4,"id":"bab921fb_73fcb73e","line":26,"updated":"2015-04-22 22:45:48.000000000","message":"Since new config options are being added, you really should mark the commit message with a \"DocImpact\" tag to notify the openstack-manual team that updates are required to the exisitng docs.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}],"cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py":[{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":235,"context_line":""},{"line_number":236,"context_line":"        Parses nameserver raw data and adds the device port wwns to the list"},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        :returns: List -- of device port wwn from ns info"},{"line_number":239,"context_line":"        \"\"\""},{"line_number":240,"context_line":"        nsinfo_list \u003d []"},{"line_number":241,"context_line":"        for line in switch_data:"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_c819a7d8","line":238,"updated":"2015-02-04 00:27:51.000000000","message":"List -- *list* of device port wwn from ns info.\n\nLooks like the word \u0027list\u0027 got deleted here.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":235,"context_line":""},{"line_number":236,"context_line":"        Parses nameserver raw data and adds the device port wwns to the list"},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        :returns: List -- of device port wwn from ns info"},{"line_number":239,"context_line":"        \"\"\""},{"line_number":240,"context_line":"        nsinfo_list \u003d []"},{"line_number":241,"context_line":"        for line in switch_data:"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_668e02d2","line":238,"in_reply_to":"da86d52c_c819a7d8","updated":"2015-02-04 22:46:30.000000000","message":"Done","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}],"cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py":[{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    patrn \u003d re.compile(\u0027[;\\s]+\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def __init__(self, ipaddress, username,"},{"line_number":48,"context_line":"                 password, port, key, vfid, protocol):"},{"line_number":49,"context_line":"        \"\"\"Initializing the client.\"\"\""},{"line_number":50,"context_line":"        self.switch_ip \u003d ipaddress"},{"line_number":51,"context_line":"        self.switch_port \u003d port"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_e8582b8c","line":48,"updated":"2015-02-04 00:27:51.000000000","message":"vfid and protocol are passed in here but are never used by the class.  Do they need to be here?","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    patrn \u003d re.compile(\u0027[;\\s]+\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def __init__(self, ipaddress, username,"},{"line_number":48,"context_line":"                 password, port, key, vfid, protocol):"},{"line_number":49,"context_line":"        \"\"\"Initializing the client.\"\"\""},{"line_number":50,"context_line":"        self.switch_ip \u003d ipaddress"},{"line_number":51,"context_line":"        self.switch_port \u003d port"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_69b97314","line":48,"in_reply_to":"da86d52c_e8582b8c","updated":"2015-02-04 22:46:30.000000000","message":"The Factory that creates the connector ( CLI or HTTP) object and passes common parameters. Since CLI doesn\u0027t use these parameters hence they are not used.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":244,"context_line":"        except Exception as e:"},{"line_number":245,"context_line":"            msg \u003d _(\"Deleting zones failed: (command\u003d%(cmd)s error\u003d%(err)s).\""},{"line_number":246,"context_line":""},{"line_number":247,"context_line":"                    ) % {\u0027cmd\u0027: cmd, \u0027err\u0027: e}"},{"line_number":248,"context_line":"            LOG.error(msg)"},{"line_number":249,"context_line":"            self._cfg_trans_abort()"},{"line_number":250,"context_line":"            raise exception.BrocadeZoningCliException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_28608300","line":247,"updated":"2015-02-04 00:27:51.000000000","message":"Use _LE log markers.\n\nhttp://docs.openstack.org/developer/oslo.i18n/guidelines.html#log-translation","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":244,"context_line":"        except Exception as e:"},{"line_number":245,"context_line":"            msg \u003d _(\"Deleting zones failed: (command\u003d%(cmd)s error\u003d%(err)s).\""},{"line_number":246,"context_line":""},{"line_number":247,"context_line":"                    ) % {\u0027cmd\u0027: cmd, \u0027err\u0027: e}"},{"line_number":248,"context_line":"            LOG.error(msg)"},{"line_number":249,"context_line":"            self._cfg_trans_abort()"},{"line_number":250,"context_line":"            raise exception.BrocadeZoningCliException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_4953cfe1","line":247,"in_reply_to":"da86d52c_28608300","updated":"2015-02-04 22:46:30.000000000","message":"The message is formatted as per guidelines only as shown below:\n\n# RIGHT\nmsg \u003d _(\u0027There was an error.\u0027)\nLOG.exception(msg)\nraise LocalExceptionClass(msg)","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            return sw_data"},{"line_number":354,"context_line":"        except processutils.ProcessExecutionError as e:"},{"line_number":355,"context_line":"            msg \u003d _(\"Error while getting data via ssh: (command\u003d%(cmd)s \""},{"line_number":356,"context_line":"                    \"error\u003d%(err)s).\") % {\u0027cmd\u0027: cmd_list, \u0027err\u0027: e}"},{"line_number":357,"context_line":"            LOG.error(msg)"},{"line_number":358,"context_line":"            raise exception.BrocadeZoningCliException(reason\u003dmsg)"},{"line_number":359,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_88532f38","line":356,"updated":"2015-02-04 00:27:51.000000000","message":"_Use _LE log markers.\n\nhttp://docs.openstack.org/developer/oslo.i18n/guidelines.html#log-translation","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":353,"context_line":"            return sw_data"},{"line_number":354,"context_line":"        except processutils.ProcessExecutionError as e:"},{"line_number":355,"context_line":"            msg \u003d _(\"Error while getting data via ssh: (command\u003d%(cmd)s \""},{"line_number":356,"context_line":"                    \"error\u003d%(err)s).\") % {\u0027cmd\u0027: cmd_list, \u0027err\u0027: e}"},{"line_number":357,"context_line":"            LOG.error(msg)"},{"line_number":358,"context_line":"            raise exception.BrocadeZoningCliException(reason\u003dmsg)"},{"line_number":359,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_496aef81","line":356,"in_reply_to":"da86d52c_88532f38","updated":"2015-02-04 22:46:30.000000000","message":"same  as above.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}],"cinder/zonemanager/drivers/brocade/brcd_fc_zone_connector_factory.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9597ab6ab8099f459164e47224dd6ab2740f961d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#    (c) Copyright 2014 Brocade Communications Systems Inc."},{"line_number":2,"context_line":"#    All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Copyright 2014 OpenStack Foundation"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_823e9a26","line":1,"updated":"2015-01-25 17:40:13.000000000","message":"2015","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9597ab6ab8099f459164e47224dd6ab2740f961d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#    (c) Copyright 2014 Brocade Communications Systems Inc."},{"line_number":2,"context_line":"#    All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Copyright 2014 OpenStack Foundation"},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":7,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_a24716bb","line":4,"updated":"2015-01-25 17:40:13.000000000","message":"Remove above line.","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9597ab6ab8099f459164e47224dd6ab2740f961d","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            \"brcd_https_fc_zone_client.BrcdHttpsFCZoneClient\"}"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def get_connector(self, fabric, sb_connector):"},{"line_number":45,"context_line":"        \"\"\"Factory method to create and return"},{"line_number":46,"context_line":"        correct SB connector object based on the protocol"},{"line_number":47,"context_line":"        \"\"\""},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_421032a8","line":45,"updated":"2015-01-25 17:40:13.000000000","message":"Please see my comments regarding docstrings in brcd_https_fc_zone_client.py.","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9597ab6ab8099f459164e47224dd6ab2740f961d","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            fabric_ssh_cert_path \u003d fabric.safe_get(\u0027fc_fabric_ssh_cert_path\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"            LOG.debug((\"Client not found,creating for %s with %s protocol \""},{"line_number":66,"context_line":"                       \"for the user %s at port %s for VFID %s\"),"},{"line_number":67,"context_line":"                      fabric_ip, sb_connector, fabric_user,"},{"line_number":68,"context_line":"                      fabric_port, fc_vfid)"},{"line_number":69,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_8225ba0a","line":66,"updated":"2015-01-25 17:40:13.000000000","message":"The inner () can be removed.","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"9597ab6ab8099f459164e47224dd6ab2740f961d","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            LOG.debug((\"Client not found,creating for %s with %s protocol \""},{"line_number":66,"context_line":"                       \"for the user %s at port %s for VFID %s\"),"},{"line_number":67,"context_line":"                      fabric_ip, sb_connector, fabric_user,"},{"line_number":68,"context_line":"                      fabric_port, fc_vfid)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"            conn \u003d self.connectors.get(sb_connector)"},{"line_number":71,"context_line":"            client \u003d importutils.import_object("}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_0281cac3","line":68,"updated":"2015-01-25 17:40:13.000000000","message":"Please use this style:\n\nLOG.debug(\"Client not found. Creating for %(ip)s with %(connector)s protocol ......\"),\n          {\u0027ip\u0027: fabric_ip, \u0027connector\u0027: sb_connector})","commit_id":"3a36567f076f206272e06564b30699a0afe24406"}],"cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py":[{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":171,"context_line":"                    target \u003d t.lower()"},{"line_number":172,"context_line":"                    zone_members.append(self.get_formatted_wwn(target))"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"                zone_name \u003d zone_name_prefix \\"},{"line_number":175,"context_line":"                    + initiator.replace(\u0027:\u0027, \u0027\u0027)"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"                if len(zone_names) \u003e 0 and (zone_name in zone_names):"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_d354fc00","line":174,"updated":"2015-02-04 00:27:51.000000000","message":"You can do:\n\nzone_name \u003d (zone_name_prefix\n    + initiator.replace(\u0027:\u0027, \u0027\u0027))\n\nto get rid of the \u0027\\\u0027 line continuations.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":171,"context_line":"                    target \u003d t.lower()"},{"line_number":172,"context_line":"                    zone_members.append(self.get_formatted_wwn(target))"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"                zone_name \u003d zone_name_prefix \\"},{"line_number":175,"context_line":"                    + initiator.replace(\u0027:\u0027, \u0027\u0027)"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"                if len(zone_names) \u003e 0 and (zone_name in zone_names):"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_a9a8cb8d","line":174,"in_reply_to":"da86d52c_d354fc00","updated":"2015-02-04 22:46:30.000000000","message":"Done","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":265,"context_line":"                    target \u003d t.lower()"},{"line_number":266,"context_line":"                    zone_members.append(self.get_formatted_wwn(target))"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"                zone_name \u003d zone_name_prefix \\"},{"line_number":269,"context_line":"                    + initiator.replace(\u0027:\u0027, \u0027\u0027)"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"                if (zone_names and (zone_name in zone_names)):"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_7349905f","line":268,"updated":"2015-02-04 00:27:51.000000000","message":"same line continuation comment as above.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":265,"context_line":"                    target \u003d t.lower()"},{"line_number":266,"context_line":"                    zone_members.append(self.get_formatted_wwn(target))"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"                zone_name \u003d zone_name_prefix \\"},{"line_number":269,"context_line":"                    + initiator.replace(\u0027:\u0027, \u0027\u0027)"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"                if (zone_names and (zone_name in zone_names)):"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_e99c835f","line":268,"in_reply_to":"da86d52c_7349905f","updated":"2015-02-04 22:46:30.000000000","message":"Done","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}],"cinder/zonemanager/drivers/brocade/brcd_https_fc_zone_client.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#    (c) Copyright 2014 Brocade Communications Systems Inc."},{"line_number":2,"context_line":"#    All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Copyright 2014 OpenStack Foundation"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_82cdba87","line":1,"updated":"2015-01-25 17:30:47.000000000","message":"2015","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#    (c) Copyright 2014 Brocade Communications Systems Inc."},{"line_number":2,"context_line":"#    All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Copyright 2014 OpenStack Foundation"},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":7,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_a2c63666","line":4,"updated":"2015-01-25 17:30:47.000000000","message":"Please remove the above line.","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":26,"context_line":"from cinder import exception"},{"line_number":27,"context_line":"from cinder.i18n import _LE, _LI"},{"line_number":28,"context_line":"from cinder.openstack.common import log as logging"},{"line_number":29,"context_line":"from cinder.zonemanager.drivers.brocade import fc_zone_constants\\"},{"line_number":30,"context_line":"    as ZoneConstant"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_42af5294","line":29,"updated":"2015-01-25 17:30:47.000000000","message":"It\u0027s better to replace \\ with ().","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def __init__(self, ipaddress, username,"},{"line_number":48,"context_line":"                 password, port, key, vfid, protocol):"},{"line_number":49,"context_line":"        \"\"\"initializing the client with the paramaters passed."},{"line_number":50,"context_line":"        Create authentication token and authenticate with switch"},{"line_number":51,"context_line":"        to ensure the credentials are correct and change the VF context"},{"line_number":52,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_c2c34255","line":49,"updated":"2015-01-25 17:30:47.000000000","message":"Please following the following guideline for all docstrings: \nhttp://docs.openstack.org/developer/hacking/#docstrings","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        # Create and assign the authentication header based on the credentials"},{"line_number":59,"context_line":"        self.auth_header \u003d self.create_auth_token()"},{"line_number":60,"context_line":"        # Authenticate with the switch"},{"line_number":61,"context_line":"        # If authenticated, created new auth header with replacing password"},{"line_number":62,"context_line":"        # with xxx"},{"line_number":63,"context_line":"        self.is_auth, self.auth_header \u003d self.authenticate()"},{"line_number":64,"context_line":"        self.check_change_vf_context()"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_02a9ca90","line":61,"updated":"2015-01-25 17:30:47.000000000","message":"with -\u003e which ?","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                header \u003d {}"},{"line_number":78,"context_line":"            header.update({\"User-Agent\": \"OpenStack Zone Driver\"})"},{"line_number":79,"context_line":"            # Ensure only one connection is made throughout the life cycle"},{"line_number":80,"context_line":"            if(self.conn is None):"},{"line_number":81,"context_line":"                if(self.protocol \u003d\u003d ZoneConstant.PROTOCOL_HTTPS):"},{"line_number":82,"context_line":"                    self.conn \u003d httplib.HTTPSConnection(self.switch_ip)"},{"line_number":83,"context_line":"                else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_c29a626d","line":80,"updated":"2015-01-25 17:30:47.000000000","message":"No need for ().","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            header.update({\"User-Agent\": \"OpenStack Zone Driver\"})"},{"line_number":79,"context_line":"            # Ensure only one connection is made throughout the life cycle"},{"line_number":80,"context_line":"            if(self.conn is None):"},{"line_number":81,"context_line":"                if(self.protocol \u003d\u003d ZoneConstant.PROTOCOL_HTTPS):"},{"line_number":82,"context_line":"                    self.conn \u003d httplib.HTTPSConnection(self.switch_ip)"},{"line_number":83,"context_line":"                else:"},{"line_number":84,"context_line":"                    self.conn \u003d httplib.HTTPConnection(self.switch_ip)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_e28afe19","line":81,"updated":"2015-01-25 17:30:47.000000000","message":"here too","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":82,"context_line":"                    self.conn \u003d httplib.HTTPSConnection(self.switch_ip)"},{"line_number":83,"context_line":"                else:"},{"line_number":84,"context_line":"                    self.conn \u003d httplib.HTTPConnection(self.switch_ip)"},{"line_number":85,"context_line":"            # send request to the switch"},{"line_number":86,"context_line":"            self.conn.request(requestType, requestURL, payload, header)"},{"line_number":87,"context_line":"            # get the response from the switch"},{"line_number":88,"context_line":"            response \u003d self.conn.getresponse()"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_0290ea48","line":85,"updated":"2015-01-25 17:30:47.000000000","message":"Capital first letter","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":84,"context_line":"                    self.conn \u003d httplib.HTTPConnection(self.switch_ip)"},{"line_number":85,"context_line":"            # send request to the switch"},{"line_number":86,"context_line":"            self.conn.request(requestType, requestURL, payload, header)"},{"line_number":87,"context_line":"            # get the response from the switch"},{"line_number":88,"context_line":"            response \u003d self.conn.getresponse()"},{"line_number":89,"context_line":"            # Throw exception when response status is not OK"},{"line_number":90,"context_line":"            if(response.status !\u003d ZoneConstant.STATUS_OK):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_42867214","line":87,"updated":"2015-01-25 17:30:47.000000000","message":"Here too","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":88,"context_line":"            response \u003d self.conn.getresponse()"},{"line_number":89,"context_line":"            # Throw exception when response status is not OK"},{"line_number":90,"context_line":"            if(response.status !\u003d ZoneConstant.STATUS_OK):"},{"line_number":91,"context_line":"                msg \u003d (_LE(\"Could not connect the switch,Reason: %s\") %"},{"line_number":92,"context_line":"                       response.reason)"},{"line_number":93,"context_line":"                LOG.error(msg)"},{"line_number":94,"context_line":"                raise exception.BrocadeZoningHttpsException(msg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_627e0e1b","line":91,"updated":"2015-01-25 17:30:47.000000000","message":"This should not use LE because this message also goes to the exception below.\n\nmsg \u003d (_(\"Could not .....","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                LOG.info(_LI(\"Connected to the switch\"))"},{"line_number":97,"context_line":"                return response.read()"},{"line_number":98,"context_line":"        except Exception as e:"},{"line_number":99,"context_line":"            msg \u003d (_LE(\"Error while connecting the switch %{switch_id}\""},{"line_number":100,"context_line":"                       \" with protocol %{protocol} Error:%{error} \") %"},{"line_number":101,"context_line":"                   {\u0027switch_id\u0027: self.switch_ip,"},{"line_number":102,"context_line":"                    \u0027protocol\u0027: self.protocol,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_a2747636","line":99,"updated":"2015-01-25 17:30:47.000000000","message":"Same here","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":127,"context_line":"                auth_token  # Build the proper header"},{"line_number":128,"context_line":"            LOG.debug(\"Authentication header : %s\" % auth_header)"},{"line_number":129,"context_line":"        except Exception as e:"},{"line_number":130,"context_line":"            msg \u003d (_LE(\"Error while creating authentication token %s \") %"},{"line_number":131,"context_line":"                   e.getDescription())"},{"line_number":132,"context_line":"            LOG.error(msg)"},{"line_number":133,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_02970a3c","line":130,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":160,"context_line":"                return True, auth_header"},{"line_number":161,"context_line":"            else:"},{"line_number":162,"context_line":"                auth_error_code \u003d self.get_nvp_value(parsed_data, \"errCode\")"},{"line_number":163,"context_line":"                msg \u003d (_LE(\"Authentication Failed, verify the switch\""},{"line_number":164,"context_line":"                           \" credentials, Error Code %s\") %"},{"line_number":165,"context_line":"                       auth_error_code)"},{"line_number":166,"context_line":"                LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_429d9258","line":163,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":166,"context_line":"                LOG.error(msg)"},{"line_number":167,"context_line":"                raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"},{"line_number":168,"context_line":"        except Exception as e:"},{"line_number":169,"context_line":"            msg \u003d (_LE(\"Error while authenticating with switch %s \") %"},{"line_number":170,"context_line":"                   e.getDescription())"},{"line_number":171,"context_line":"            LOG.error(msg)"},{"line_number":172,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_62a52ea1","line":169,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":181,"context_line":"                                    ZoneConstant.SESSION_PAGE_ACTION,"},{"line_number":182,"context_line":"                                    header\u003dheaders)"},{"line_number":183,"context_line":"        except Exception as e:"},{"line_number":184,"context_line":"            msg \u003d (_LE(\"Error while getting session information %s \") %"},{"line_number":185,"context_line":"                   e.getDescription())"},{"line_number":186,"context_line":"            LOG.error(msg)"},{"line_number":187,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_82a21a97","line":184,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":200,"context_line":"            end \u003d data.index(demil2)"},{"line_number":201,"context_line":"            return data[start:end]"},{"line_number":202,"context_line":"        except Exception as e:"},{"line_number":203,"context_line":"            msg \u003d (_LE(\"Error while parsing the data %s \") %"},{"line_number":204,"context_line":"                   e.getDescription())"},{"line_number":205,"context_line":"            LOG.error(msg)"},{"line_number":206,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_a2ab9673","line":203,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":218,"context_line":"            end \u003d temp.index(\"\\n\")"},{"line_number":219,"context_line":"            return(temp[:end].lstrip(\u0027\u003d \u0027))"},{"line_number":220,"context_line":"        except Exception as e:"},{"line_number":221,"context_line":"            msg \u003d (_LE(\"Error while getting nvp value %s \") %"},{"line_number":222,"context_line":"                   e.getDescription())"},{"line_number":223,"context_line":"            LOG.error(msg)"},{"line_number":224,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_e2b83eca","line":221,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":235,"context_line":"                                         ZoneConstant.MANAGEABLE_VF)"},{"line_number":236,"context_line":"            if VF_list:"},{"line_number":237,"context_line":"                VF_list \u003d VF_list.split(\",\")  # convert the string to list"},{"line_number":238,"context_line":"        except Exception as e:"},{"line_number":239,"context_line":"            msg \u003d (_LE(\"Error while checking whether\""},{"line_number":240,"context_line":"                       \" VF is available for management %s \") %"},{"line_number":241,"context_line":"                   e.getDescription())"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_02be2ab4","line":238,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":269,"context_line":"                if session_LF_Id \u003d\u003d vfid:"},{"line_number":270,"context_line":"                    LOG.info(_LI(\"VF context is changed in the session\"))"},{"line_number":271,"context_line":"                else:"},{"line_number":272,"context_line":"                    msg \u003d _LE(\"Cannot Change VF context in the session\")"},{"line_number":273,"context_line":"                    LOG.error(msg)"},{"line_number":274,"context_line":"                    raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"},{"line_number":275,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_42b4b2d0","line":272,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":274,"context_line":"                    raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"},{"line_number":275,"context_line":""},{"line_number":276,"context_line":"            else:"},{"line_number":277,"context_line":"                msg \u003d (_LE(\"Cannot Change VF context,\""},{"line_number":278,"context_line":"                           \"Specified VF in not available\""},{"line_number":279,"context_line":"                           \"in the manageable VF list %s\") %"},{"line_number":280,"context_line":"                       managable_VF_list)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_62cc4e6b","line":277,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":281,"context_line":"                LOG.error(msg)"},{"line_number":282,"context_line":"                raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"},{"line_number":283,"context_line":"        except Exception as e:"},{"line_number":284,"context_line":"            msg \u003d (_LE(\"Error while changing VF context  %s\") %"},{"line_number":285,"context_line":"                   e.getDescription())"},{"line_number":286,"context_line":"            LOG.error(msg)"},{"line_number":287,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_82c93a5b","line":284,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":361,"context_line":"                else:"},{"line_number":362,"context_line":"                    i \u003d i + 1"},{"line_number":363,"context_line":"        except Exception as e:"},{"line_number":364,"context_line":"            msg \u003d (_LE(\"Error while changing VF context  %s \") %"},{"line_number":365,"context_line":"                   e.getDescription())"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_a2c2b631","line":364,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":396,"context_line":"                isfwsupported \u003d True"},{"line_number":397,"context_line":""},{"line_number":398,"context_line":"        except Exception as e:"},{"line_number":399,"context_line":"            msg \u003d (_LE(\"Error while checking the firmware version %s\") %"},{"line_number":400,"context_line":"                   e.getDescription())"},{"line_number":401,"context_line":"            LOG.error(msg)"},{"line_number":402,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_c2bfc2a8","line":399,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":431,"context_line":"                \"active_zone_config\": self.active_cfg, \"zones\": zones_map}"},{"line_number":432,"context_line":"            return active_zone_set"},{"line_number":433,"context_line":"        except Exception as e:"},{"line_number":434,"context_line":"            msg \u003d (_LE(\"Failed getting active zone set \""},{"line_number":435,"context_line":"                       \"from fabric %s\") %"},{"line_number":436,"context_line":"                   e.getDescription())"},{"line_number":437,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_e2df5e0b","line":434,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":480,"context_line":"        # Post the zone data to the switch"},{"line_number":481,"context_line":"        error_code, error_msg \u003d self.post_zone_data(data)"},{"line_number":482,"context_line":"        if error_code !\u003d \"0\":"},{"line_number":483,"context_line":"            msg \u003d (_LE(\"Applying the zones and cfgs to the switch failed \""},{"line_number":484,"context_line":"                       \"(error code\u003d%(err_code)s error msg\u003d%(err_msg)s.\") %"},{"line_number":485,"context_line":"                   {\u0027err_code\u0027: error_code, \u0027err_msg\u0027: error_msg})"},{"line_number":486,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_02e54adc","line":483,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":529,"context_line":"            # Build the final zone string"},{"line_number":530,"context_line":"            zoneString +\u003d ZoneConstant.ZONE_END_DELIM + saveonly"},{"line_number":531,"context_line":"        except Exception as e:"},{"line_number":532,"context_line":"            msg \u003d (_LE(\"Exception while forming the zone string : %s\") %"},{"line_number":533,"context_line":"                   e.getDescription())"},{"line_number":534,"context_line":"            LOG.error(msg)"},{"line_number":535,"context_line":"            raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_22e6c6e8","line":532,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":581,"context_line":"                active_cfg \u003d cfg_name"},{"line_number":582,"context_line":"                cfgs.update({cfg_name: cfg_string})"},{"line_number":583,"context_line":"        except Exception as e:"},{"line_number":584,"context_line":"            msg \u003d (_LE(\"Error while updating the new zones and cfgs\""},{"line_number":585,"context_line":"                       \" in the zone string. Error %s\") %"},{"line_number":586,"context_line":"                   e.getDescription())"},{"line_number":587,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_62d36e04","line":584,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":601,"context_line":"                parsed_data, ZoneConstant.VF_ENABLED))"},{"line_number":602,"context_line":"        except ValueError:"},{"line_number":603,"context_line":"            isVFEnabled \u003d False"},{"line_number":604,"context_line":"            parsed_data  # Syntax Error, Make it as logging"},{"line_number":605,"context_line":"        return isVFEnabled, parsed_data"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"    def get_nameserver_info(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_a2d9d623","line":604,"updated":"2015-01-25 17:30:47.000000000","message":"This line is not complete.","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":664,"context_line":"            if active_cfg not in cfgs:"},{"line_number":665,"context_line":"                active_cfg \u003d \"\""},{"line_number":666,"context_line":"        except Exception as e:"},{"line_number":667,"context_line":"            msg \u003d (_LE(\"Error while removing the zones and cfgs\""},{"line_number":668,"context_line":"                       \" in the zone string. Error %s\") %"},{"line_number":669,"context_line":"                   e.getDescription())"},{"line_number":670,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_020c6aa4","line":667,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":706,"context_line":"                  \" after for applying to the switch  : %s\", data)"},{"line_number":707,"context_line":"        error_code, error_msg \u003d self.post_zone_data(data)"},{"line_number":708,"context_line":"        if error_code !\u003d \"0\":"},{"line_number":709,"context_line":"            msg \u003d (_LE(\"Applying the zones and cfgs to the switch failed \""},{"line_number":710,"context_line":"                       \"(error code\u003d%(err_code)s error msg\u003d%(err_msg)s.\") %"},{"line_number":711,"context_line":"                   {\u0027err_code\u0027: error_code, \u0027err_msg\u0027: error_msg})"},{"line_number":712,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_22fde66e","line":709,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":762,"context_line":""},{"line_number":763,"context_line":"        if vf_enabled:"},{"line_number":764,"context_line":"            if(self.vfid is None):"},{"line_number":765,"context_line":"                msg \u003d _LE(\"No vfid is defined in the configuration file\")"},{"line_number":766,"context_line":"                LOG.error(msg)"},{"line_number":767,"context_line":"                raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"},{"line_number":768,"context_line":"            elif(self.vfid !\u003d 128):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_4202f26f","line":765,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2372f5dd84ceb627e9d0e31de1fbfbc081f4f238","unresolved":false,"context_lines":[{"line_number":769,"context_line":"                self.change_VF_context(self.vfid, session_data)"},{"line_number":770,"context_line":"        else:"},{"line_number":771,"context_line":"            if(self.vfid is not None):"},{"line_number":772,"context_line":"                msg \u003d _LE(\"VF is not Enabled\")"},{"line_number":773,"context_line":"                LOG.error(msg)"},{"line_number":774,"context_line":"                raise exception.BrocadeZoningHttpsException(reason\u003dmsg)"},{"line_number":775,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_62fa8e76","line":772,"updated":"2015-01-25 17:30:47.000000000","message":"Same","commit_id":"3a36567f076f206272e06564b30699a0afe24406"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"fe30ad2ee1f65b050bad375452d175870ec9fcf6","unresolved":false,"context_lines":[{"line_number":18,"context_line":"HTTP or HTTPS protocol."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"import httplib"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from cinder import exception"},{"line_number":24,"context_line":"from cinder.i18n import _, _LI"}],"source_content_type":"text/x-python","patch_set":4,"id":"bab921fb_d345c317","line":21,"updated":"2015-04-22 22:23:43.000000000","message":"You might want to look into using the requests library for this instead.   I believe it\u0027s supported far better.\n\nhttp://docs.python-requests.org/en/latest/","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}],"cinder/zonemanager/drivers/brocade/fc_zone_constants.py":[{"author":{"_account_id":11903,"name":"Anthony Lee","email":"anthony.mic.lee@hpe.com","username":"leeantho"},"change_message_id":"b933362429696e87c07e2c416e914c0c001ad61d","unresolved":false,"context_lines":[{"line_number":74,"context_line":"VF_ENABLED \u003d \"vfEnabled\""},{"line_number":75,"context_line":"MANAGEABLE_VF \u003d \"manageableLFList\""},{"line_number":76,"context_line":"CHANGE_VF_TEMPLATE \u003d \"Session\u003d--BEGIN SESSION\\n\\taction\u003dapply\\n\\tLFId\u003d  {vfid}  \" \\"},{"line_number":77,"context_line":"                     \"\\b\\t--END SESSION\""},{"line_number":78,"context_line":"ZoneTranStatus \u003d \"/gzoneinfo.htm?txnId\u003d{txnId}\""},{"line_number":79,"context_line":"CFG_DELIM \u003d \"\\x01\""},{"line_number":80,"context_line":"ZONE_DELIM \u003d \"\\x02\""}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_93b44436","line":77,"updated":"2015-02-04 00:27:51.000000000","message":"You can use parentheses:\n \nCHANGE_VF_TEMPLATE \u003d (\"...\"\n    \"....\")\n\nto get rid of the \u0027\\\u0027 line continuation if you want.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"},{"author":{"_account_id":11660,"name":"Nagendra Rao Jaladanki","email":"nagendra.jaladanki@gmail.com","username":"njaladanki"},"change_message_id":"2ce2b9627f3a362f89deafe5fa69aea5b2f9355c","unresolved":false,"context_lines":[{"line_number":74,"context_line":"VF_ENABLED \u003d \"vfEnabled\""},{"line_number":75,"context_line":"MANAGEABLE_VF \u003d \"manageableLFList\""},{"line_number":76,"context_line":"CHANGE_VF_TEMPLATE \u003d \"Session\u003d--BEGIN SESSION\\n\\taction\u003dapply\\n\\tLFId\u003d  {vfid}  \" \\"},{"line_number":77,"context_line":"                     \"\\b\\t--END SESSION\""},{"line_number":78,"context_line":"ZoneTranStatus \u003d \"/gzoneinfo.htm?txnId\u003d{txnId}\""},{"line_number":79,"context_line":"CFG_DELIM \u003d \"\\x01\""},{"line_number":80,"context_line":"ZONE_DELIM \u003d \"\\x02\""}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_c9e5ffdc","line":77,"in_reply_to":"da86d52c_93b44436","updated":"2015-02-04 22:46:30.000000000","message":"Done","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}],"etc/cinder/cinder.conf.sample":[{"author":{"_account_id":6043,"name":"Kurt Martin","email":"kurt.f.martin@hpe.com","username":"kurt-f-martin"},"change_message_id":"bd11aa8115a3bb848f3237b9ad3d190f5aa4beb9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"[DEFAULT]"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Options defined in oslo.messaging"},{"line_number":5,"context_line":"#"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"bab921fb_539093ec","line":2,"updated":"2015-04-22 22:45:48.000000000","message":"This file should not be part of your commit, please remove it from the patch set...the conf file is generated automatically.","commit_id":"7d7c1737dd174ec7fd4c2eb8af8839d9ed746948"}]}
