)]}'
{"openstack/network/v2/_proxy.py":[{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"34609f9f58b2535336230a8fa3501bbb38d62430","unresolved":false,"context_lines":[{"line_number":203,"context_line":"        \"\"\""},{"line_number":204,"context_line":"        return self._list(availability_zone.AvailabilityZone, paginated\u003dFalse)"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    def dhcp_agent_hosting_networks_list(self, agent, **query):"},{"line_number":207,"context_line":"        \"\"\"A generator of networks hosted by a DHCP agent."},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"        :param agent: Either the agent id of an instance of"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_57036d73","line":206,"updated":"2016-11-07 19:32:50.000000000","message":"This shouldn\u0027t have `_list` at the end. Should just be dhcp_agent_hosting_networks","commit_id":"3e7b0ab23caa46e26e9814104dda0184ee210d24"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"34609f9f58b2535336230a8fa3501bbb38d62430","unresolved":false,"context_lines":[{"line_number":218,"context_line":"                          path_args\u003d{\u0027agent_id\u0027: agent_id},"},{"line_number":219,"context_line":"                          **query)"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"    def dhcp_agent_add_to_network(self, agent, network):"},{"line_number":222,"context_line":"        \"\"\"Add a DHCP Agent to a network"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        :param agent: Either the agent id of an instance of"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_37351946","line":221,"updated":"2016-11-07 19:32:50.000000000","message":"This would be better as add_dhcp_agent_to_network. This matches how we\u0027ve done similar add/remove in compute, e.g., https://github.com/openstack/python-openstacksdk/blob/master/openstack/compute/v2/_proxy.py#L528","commit_id":"3e7b0ab23caa46e26e9814104dda0184ee210d24"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"34609f9f58b2535336230a8fa3501bbb38d62430","unresolved":false,"context_lines":[{"line_number":218,"context_line":"                          path_args\u003d{\u0027agent_id\u0027: agent_id},"},{"line_number":219,"context_line":"                          **query)"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"    def dhcp_agent_add_to_network(self, agent, network):"},{"line_number":222,"context_line":"        \"\"\"Add a DHCP Agent to a network"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        :param agent: Either the agent id of an instance of"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_77023140","line":221,"range":{"start_line":221,"start_character":40,"end_line":221,"end_character":45},"updated":"2016-11-07 19:32:50.000000000","message":"agent and network both need to be able to work with ID values here as well. Use self._get_resource in the method body to either get an agent ID or an agent resource to use, and the same for the network parameter -- this applies to the below methods as well. \n\nSee https://github.com/openstack/python-openstacksdk/blob/master/openstack/compute/v2/_proxy.py#L426 for an example of how we do this.","commit_id":"3e7b0ab23caa46e26e9814104dda0184ee210d24"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"34609f9f58b2535336230a8fa3501bbb38d62430","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        body \u003d {\u0027network_id\u0027: network.id}"},{"line_number":230,"context_line":"        return agent.add_agent_to_network(self.session, **body)"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"    def dhcp_agent_remove_from_network(self, agent, network):"},{"line_number":233,"context_line":"        \"\"\"Remove a DHCP Agent from a network"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        :param agent: Either the agent id of an instance of"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_b74929d3","line":232,"updated":"2016-11-07 19:32:50.000000000","message":"remove_dhcp_agent_from_network would be the name here","commit_id":"3e7b0ab23caa46e26e9814104dda0184ee210d24"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"34609f9f58b2535336230a8fa3501bbb38d62430","unresolved":false,"context_lines":[{"line_number":241,"context_line":"        body \u003d {\u0027network_id\u0027: network_id}"},{"line_number":242,"context_line":"        return agent.remove_agent_from_network(self.session, **body)"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"    def networks_hosting_dhcp_agent_list(self, network, **query):"},{"line_number":245,"context_line":"        \"\"\"A generator of DHCP agents hosted on a network."},{"line_number":246,"context_line":""},{"line_number":247,"context_line":"        :param network: The instance of"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_b7aa0918","line":244,"updated":"2016-11-07 19:32:50.000000000","message":"I\u0027m not really sure how to read this method, but it can\u0027t have _list at the end (it\u0027s not a list, we use the name internally though to correspond closer to the REST meaning, but we don\u0027t expose it).\n\nIdeally the last word in the method name for a list call is plural, though maybe that doesn\u0027t work here. It seems to be more about a list of agents than a list of networks, so maybe agents should be pluralized instead of networks?","commit_id":"3e7b0ab23caa46e26e9814104dda0184ee210d24"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"75f04fcbb8e66c1338aef4b6b23f5a1d08d03049","unresolved":false,"context_lines":[{"line_number":226,"context_line":"        :param network: Network instance"},{"line_number":227,"context_line":"        :return:"},{"line_number":228,"context_line":"        \"\"\""},{"line_number":229,"context_line":"        network \u003d self._get_resource(_network.Network, network)"},{"line_number":230,"context_line":"        body \u003d {\u0027network_id\u0027: network.id}"},{"line_number":231,"context_line":"        return agent.add_agent_to_network(self.session, **body)"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9a629dbe_907873f4","line":229,"updated":"2016-11-08 21:21:17.000000000","message":"You need to do the same thing as this with the agent parameter. Both of those can be sent in as IDs, so we can\u0027t assume they\u0027ll be actual resource instances that are called directly like on line 231.","commit_id":"8dfc44d43415368f29e6c198225654c061525d71"},{"author":{"_account_id":22774,"name":"Shashank Kumar Shankar","email":"shashank.kumar.shankar@intel.com","username":"skshankar"},"change_message_id":"d53a119032e2f3c6b1963b8339955a88df1a728a","unresolved":false,"context_lines":[{"line_number":226,"context_line":"        :param network: Network instance"},{"line_number":227,"context_line":"        :return:"},{"line_number":228,"context_line":"        \"\"\""},{"line_number":229,"context_line":"        network \u003d self._get_resource(_network.Network, network)"},{"line_number":230,"context_line":"        body \u003d {\u0027network_id\u0027: network.id}"},{"line_number":231,"context_line":"        return agent.add_agent_to_network(self.session, **body)"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9a629dbe_d39bd5c7","line":229,"in_reply_to":"9a629dbe_907873f4","updated":"2016-11-08 21:28:50.000000000","message":"Done","commit_id":"8dfc44d43415368f29e6c198225654c061525d71"},{"author":{"_account_id":8257,"name":"Brian Curtin","email":"brian@python.org","username":"briancurtin"},"change_message_id":"75f04fcbb8e66c1338aef4b6b23f5a1d08d03049","unresolved":false,"context_lines":[{"line_number":239,"context_line":"        :return:"},{"line_number":240,"context_line":"        \"\"\""},{"line_number":241,"context_line":"        # network_id \u003d resource.Resource.get_id(network)"},{"line_number":242,"context_line":"        network \u003d self._get_resource(_network.Network, network)"},{"line_number":243,"context_line":"        body \u003d {\u0027network_id\u0027: network.id}"},{"line_number":244,"context_line":"        return agent.remove_agent_from_network(self.session, **body)"},{"line_number":245,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9a629dbe_f0636f3f","line":242,"updated":"2016-11-08 21:21:17.000000000","message":"Same thing as above with the agent argument.","commit_id":"8dfc44d43415368f29e6c198225654c061525d71"},{"author":{"_account_id":22774,"name":"Shashank Kumar Shankar","email":"shashank.kumar.shankar@intel.com","username":"skshankar"},"change_message_id":"d53a119032e2f3c6b1963b8339955a88df1a728a","unresolved":false,"context_lines":[{"line_number":239,"context_line":"        :return:"},{"line_number":240,"context_line":"        \"\"\""},{"line_number":241,"context_line":"        # network_id \u003d resource.Resource.get_id(network)"},{"line_number":242,"context_line":"        network \u003d self._get_resource(_network.Network, network)"},{"line_number":243,"context_line":"        body \u003d {\u0027network_id\u0027: network.id}"},{"line_number":244,"context_line":"        return agent.remove_agent_from_network(self.session, **body)"},{"line_number":245,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9a629dbe_f39e19b7","line":242,"in_reply_to":"9a629dbe_f0636f3f","updated":"2016-11-08 21:28:50.000000000","message":"Done","commit_id":"8dfc44d43415368f29e6c198225654c061525d71"}]}
