)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Co-Authored-By: Lilia Sampaio \u003cliliars@lsd.ufcg.edu.br\u003e"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Conflicts:"},{"line_number":12,"context_line":"\toneview_client/client.py"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I84f8b4d1bcce63e7d744687f87b9ab9287c5a07e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"5a710552_68c85156","line":12,"updated":"2015-12-15 13:54:19.000000000","message":"Do we have conflicts in this patch?","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Co-Authored-By: Lilia Sampaio \u003cliliars@lsd.ufcg.edu.br\u003e"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Conflicts:"},{"line_number":12,"context_line":"\toneview_client/client.py"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I84f8b4d1bcce63e7d744687f87b9ab9287c5a07e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"5a710552_d4a000f7","line":12,"in_reply_to":"5a710552_68c85156","updated":"2015-12-15 14:52:59.000000000","message":"Don\u0027t know where the hack this came from. Removing...","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"}],"oneview_client/client.py":[{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"57d6baca8779d4c691f91a535523214d5b6689f9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# (c) Copyright 2015 Hewlett Packard Enterprise Development LP"},{"line_number":2,"context_line":"# Copyright 2015 Universidade Federal de Campina Grande"},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\");"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a29b11f_e96b13f0","line":1,"updated":"2015-10-24 01:26:55.000000000","message":"The other files have an empty comment line above this one. Please keep it consistent.","commit_id":"2633291ec47ed86f648f4c6f9c113bf406908393"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":227,"context_line":"        )"},{"line_number":228,"context_line":"        return server_profile.boot.get(\"order\")"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    def _update_boot_order(self, server_profile, order):"},{"line_number":231,"context_line":"        manageBoot \u003d server_profile.boot.get(\"manageBoot\")"},{"line_number":232,"context_line":"        server_profile.boot \u003d {"},{"line_number":233,"context_line":"            \"manageBoot\": manageBoot,"}],"source_content_type":"text/x-python","patch_set":14,"id":"7a740942_a7435f12","line":230,"updated":"2015-12-15 13:54:19.000000000","message":"This function should either not have side effects, or only do side effects. The way it is now is misleading. If I were to pick one, I\u0027d prefer the former.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":227,"context_line":"        )"},{"line_number":228,"context_line":"        return server_profile.boot.get(\"order\")"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    def _update_boot_order(self, server_profile, order):"},{"line_number":231,"context_line":"        manageBoot \u003d server_profile.boot.get(\"manageBoot\")"},{"line_number":232,"context_line":"        server_profile.boot \u003d {"},{"line_number":233,"context_line":"            \"manageBoot\": manageBoot,"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_1491a8f0","line":230,"in_reply_to":"7a740942_a7435f12","updated":"2015-12-15 14:52:59.000000000","message":"The function of this method is to update the boot order of the SP passed with the order passed in the parameter. So, side effects are expected.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"}],"oneview_client/models.py":[{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class OneViewObject(object):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def get_instance_from_json(self, json):"},{"line_number":21,"context_line":"        for attr_key in self.attribute_map:"},{"line_number":22,"context_line":"            attribute_value \u003d json.get(attr_key)"},{"line_number":23,"context_line":"            setattr(self, self.attribute_map.get(attr_key), attribute_value)"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_c87945fe","line":20,"updated":"2015-12-15 13:54:19.000000000","message":"I don\u0027t know the pythonic or openstacktic way of doing this, but I\u0027d rather have it just as from_json instead of get_instance_from_json","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class OneViewObject(object):"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def get_instance_from_json(self, json):"},{"line_number":21,"context_line":"        for attr_key in self.attribute_map:"},{"line_number":22,"context_line":"            attribute_value \u003d json.get(attr_key)"},{"line_number":23,"context_line":"            setattr(self, self.attribute_map.get(attr_key), attribute_value)"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_880ed832","line":20,"in_reply_to":"5a710552_c87945fe","updated":"2015-12-15 14:52:59.000000000","message":"The correct way of doing this is using classmethod. I\u0027ll change it to do that.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":85,"context_line":"class ServerProfile(OneViewObject):"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def __init__(self):"},{"line_number":88,"context_line":"        pass"},{"line_number":89,"context_line":"        self.attribute_map \u003d {"},{"line_number":90,"context_line":"            \u0027uri\u0027: \u0027uri\u0027,"},{"line_number":91,"context_line":"            \u0027serverProfileTemplateUri\u0027: \u0027server_profile_template_uri\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_134c62c6","line":88,"updated":"2015-12-15 13:54:19.000000000","message":"I guess it should not be here.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":85,"context_line":"class ServerProfile(OneViewObject):"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def __init__(self):"},{"line_number":88,"context_line":"        pass"},{"line_number":89,"context_line":"        self.attribute_map \u003d {"},{"line_number":90,"context_line":"            \u0027uri\u0027: \u0027uri\u0027,"},{"line_number":91,"context_line":"            \u0027serverProfileTemplateUri\u0027: \u0027server_profile_template_uri\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_28c5648d","line":88,"in_reply_to":"5a710552_134c62c6","updated":"2015-12-15 14:52:59.000000000","message":"Done","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":100,"context_line":"            \u0027sanStorage\u0027: \u0027san_storage\u0027,"},{"line_number":101,"context_line":"        }"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def get_instance_from_json(self, json_body):"},{"line_number":104,"context_line":"        for attr_key in json_body.keys():"},{"line_number":105,"context_line":"            attribute_value \u003d json_body.get(attr_key)"},{"line_number":106,"context_line":"            attribute_map_value \u003d self.attribute_map.get(attr_key)"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_686b711f","line":103,"updated":"2015-12-15 13:54:19.000000000","message":"ditto","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":100,"context_line":"            \u0027sanStorage\u0027: \u0027san_storage\u0027,"},{"line_number":101,"context_line":"        }"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def get_instance_from_json(self, json_body):"},{"line_number":104,"context_line":"        for attr_key in json_body.keys():"},{"line_number":105,"context_line":"            attribute_value \u003d json_body.get(attr_key)"},{"line_number":106,"context_line":"            attribute_map_value \u003d self.attribute_map.get(attr_key)"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_8846d821","line":103,"in_reply_to":"5a710552_686b711f","updated":"2015-12-15 14:52:59.000000000","message":"Done","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":109,"context_line":"            setattr(self, attr_key, attribute_value)"},{"line_number":110,"context_line":"        return self"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    def parse_to_oneview_dict(self):"},{"line_number":113,"context_line":"        server_profile_dict \u003d {}"},{"line_number":114,"context_line":"        for attr_key in self.__dict__.keys():"},{"line_number":115,"context_line":"            attribute_value \u003d getattr(self, str(attr_key))"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_88449d74","line":112,"updated":"2015-12-15 13:54:19.000000000","message":"As in the other case, I\u0027d simplify this as to_dict or to_oneview_dict, without parse_.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":109,"context_line":"            setattr(self, attr_key, attribute_value)"},{"line_number":110,"context_line":"        return self"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    def parse_to_oneview_dict(self):"},{"line_number":113,"context_line":"        server_profile_dict \u003d {}"},{"line_number":114,"context_line":"        for attr_key in self.__dict__.keys():"},{"line_number":115,"context_line":"            attribute_value \u003d getattr(self, str(attr_key))"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_4849d030","line":112,"in_reply_to":"5a710552_88449d74","updated":"2015-12-15 14:52:59.000000000","message":"Done","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        del server_profile_dict[\u0027attribute_map\u0027]"},{"line_number":121,"context_line":"        return server_profile_dict"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def _keys_of_value(self, dictionary, value):"},{"line_number":124,"context_line":"        for key in dictionary.keys():"},{"line_number":125,"context_line":"            if dictionary.get(key) \u003d\u003d value:"},{"line_number":126,"context_line":"                return key"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_d317baa1","line":123,"updated":"2015-12-15 13:54:19.000000000","message":"this should be in singular: key","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        del server_profile_dict[\u0027attribute_map\u0027]"},{"line_number":121,"context_line":"        return server_profile_dict"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def _keys_of_value(self, dictionary, value):"},{"line_number":124,"context_line":"        for key in dictionary.keys():"},{"line_number":125,"context_line":"            if dictionary.get(key) \u003d\u003d value:"},{"line_number":126,"context_line":"                return key"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_cb2b7a81","line":123,"in_reply_to":"5a710552_d317baa1","updated":"2015-12-15 14:52:59.000000000","message":"Method renamed. This name is misleading.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"f3e289f72d68af14db6ede43ab6e348fa6f1fb43","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        return server_profile_dict"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def _keys_of_value(self, dictionary, value):"},{"line_number":124,"context_line":"        for key in dictionary.keys():"},{"line_number":125,"context_line":"            if dictionary.get(key) \u003d\u003d value:"},{"line_number":126,"context_line":"                return key"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_337dde1c","line":124,"updated":"2015-12-15 13:54:19.000000000","message":"I\u0027d simplify this as\n\n    for k, v in dictionary.items():\n        if v \u003d\u003d value:\n            return k\n\n... to avoid the lookup of the key in the dict for each item.","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"105c05adf6bf225693c9a3f64a15c4b71c922c31","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        return server_profile_dict"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def _keys_of_value(self, dictionary, value):"},{"line_number":124,"context_line":"        for key in dictionary.keys():"},{"line_number":125,"context_line":"            if dictionary.get(key) \u003d\u003d value:"},{"line_number":126,"context_line":"                return key"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a710552_0853c8e2","line":124,"in_reply_to":"5a710552_337dde1c","updated":"2015-12-15 14:52:59.000000000","message":"Done","commit_id":"6d61f8e34788d8d963cf3a5abf5a000879f724fa"}],"oneview_client/models/server_profile.py":[{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"57d6baca8779d4c691f91a535523214d5b6689f9","unresolved":false,"context_lines":[{"line_number":21,"context_line":"class ServerProfile(OneViewObject):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def __init__(self):"},{"line_number":24,"context_line":"        pass"},{"line_number":25,"context_line":"        self.attribute_map \u003d {"},{"line_number":26,"context_line":"            \u0027uri\u0027: \u0027uri\u0027,"},{"line_number":27,"context_line":"            \u0027serverProfileTemplateUri\u0027: \u0027server_profile_template_uri\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a29b11f_2994abe6","line":24,"updated":"2015-10-24 01:26:55.000000000","message":"Won\u0027t it make the code below dead code?","commit_id":"2633291ec47ed86f648f4c6f9c113bf406908393"}],"oneview_client/tests/test_models.py":[{"author":{"_account_id":10917,"name":"Gabriel Bezerra","email":"gabrielb@lsd.ufcg.edu.br","username":"gabriel.bezerra"},"change_message_id":"61ef985c3d4137341e2c6c18a57d49fb7f35c907","unresolved":false,"context_lines":[{"line_number":159,"context_line":"        profile \u003d ServerProfile()"},{"line_number":160,"context_line":"        profile.uri \u003d \u0027http://somehting.com/111-222-333-444\u0027"},{"line_number":161,"context_line":"        self.assertEqual(profile.to_oneview_dict(),"},{"line_number":162,"context_line":"                         {\u0027uri\u0027: \u0027http://somehting.com/111-222-333-444\u0027})"}],"source_content_type":"text/x-python","patch_set":17,"id":"5a710552_1fd1b357","line":162,"updated":"2015-12-15 18:02:26.000000000","message":"I\u0027d add the test that:\n\n    json \u003d ...\n    ServerProfile.from_json(json).to_oneview_dict() \u003d\u003d json\n\nDoes it make sense to you?","commit_id":"549d2eab175b909bc546d3c0117025ea0b18f2e6"},{"author":{"_account_id":10697,"name":"Thiago Paiva Brito","email":"thiagop@lsd.ufcg.edu.br","username":"thiagop","inactive":true},"change_message_id":"c73d5ccfa3acc3d0cf2b0f531d6fc5a44f26e7eb","unresolved":false,"context_lines":[{"line_number":159,"context_line":"        profile \u003d ServerProfile()"},{"line_number":160,"context_line":"        profile.uri \u003d \u0027http://somehting.com/111-222-333-444\u0027"},{"line_number":161,"context_line":"        self.assertEqual(profile.to_oneview_dict(),"},{"line_number":162,"context_line":"                         {\u0027uri\u0027: \u0027http://somehting.com/111-222-333-444\u0027})"}],"source_content_type":"text/x-python","patch_set":17,"id":"5a710552_3ae11dd1","line":162,"in_reply_to":"5a710552_1fd1b357","updated":"2015-12-15 18:31:18.000000000","message":"Not really. The ServerProfile object is created based onthe attribute map and it means that some fields may be excluded. If we generate again the oneview_dict it\u0027s expected that it will not have some of the fields.","commit_id":"549d2eab175b909bc546d3c0117025ea0b18f2e6"}]}
