)]}'
{"octavia/controller/worker/tasks/network_tasks.py":[{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"44bc32e0620db67d742acd2b7b7a61d0a7e74b0d","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    def execute(self, loadbalancer, amphora):"},{"line_number":42,"context_line":"        LOG.debug(\"Calculating network delta for amphora id: %s\", amphora.id)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"        if not self.network_driver:"},{"line_number":45,"context_line":"            self.network_driver \u003d utils.get_network_driver()"},{"line_number":46,"context_line":"        # Figure out what networks we want"},{"line_number":47,"context_line":"        # seed with lb network(s)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_9a3446fd","line":44,"updated":"2017-12-05 23:58:34.000000000","message":"this is. a lot of redundant code. Can we have a private method for that?","commit_id":"f0b46e78358007860b83e3f564968d4ba1248675"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"5366bfc13d3d026114f64ff2fc1cc2429072c6f1","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    def execute(self, loadbalancer, amphora):"},{"line_number":42,"context_line":"        LOG.debug(\"Calculating network delta for amphora id: %s\", amphora.id)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"        if not self.network_driver:"},{"line_number":45,"context_line":"            self.network_driver \u003d utils.get_network_driver()"},{"line_number":46,"context_line":"        # Figure out what networks we want"},{"line_number":47,"context_line":"        # seed with lb network(s)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_d5170145","line":44,"in_reply_to":"df87a7cf_9a3446fd","updated":"2017-12-06 00:02:20.000000000","message":"Sure.","commit_id":"f0b46e78358007860b83e3f564968d4ba1248675"},{"author":{"_account_id":25239,"name":"Bar Elharar","email":"bar@redhat.com","username":"belharar"},"change_message_id":"f8e9a49c325c0af7827381534e28f182f7d8d0c7","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    network_driver \u003d None"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def _load_network_driver(self):"},{"line_number":37,"context_line":"        if not self.network_driver:"},{"line_number":38,"context_line":"            self.network_driver \u003d utils.get_network_driver()"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_1f7d567e","line":37,"range":{"start_line":37,"start_character":8,"end_line":37,"end_character":35},"updated":"2017-12-07 14:06:52.000000000","message":"PEP8: is None\nunless that\u0027s not what you intended...","commit_id":"b92060bd4673d33fceed4e5ea35dfb977534f285"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"6012e507b812d6baeaeb7ed1302aaab3eec82e13","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    network_driver \u003d None"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def _load_network_driver(self):"},{"line_number":37,"context_line":"        if not self.network_driver:"},{"line_number":38,"context_line":"            self.network_driver \u003d utils.get_network_driver()"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_32f2c371","line":37,"range":{"start_line":37,"start_character":8,"end_line":37,"end_character":35},"in_reply_to":"df87a7cf_1f7d567e","updated":"2017-12-07 23:47:21.000000000","message":"They should be identical in this case, as there\u0027s nothing that is going to set it to like ... [] or anything. I COULD change it, I guess?","commit_id":"b92060bd4673d33fceed4e5ea35dfb977534f285"},{"author":{"_account_id":25239,"name":"Bar Elharar","email":"bar@redhat.com","username":"belharar"},"change_message_id":"f8e9a49c325c0af7827381534e28f182f7d8d0c7","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def _load_network_driver(self):"},{"line_number":37,"context_line":"        if not self.network_driver:"},{"line_number":38,"context_line":"            self.network_driver \u003d utils.get_network_driver()"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"class CalculateAmphoraDelta(BaseNetworkTask):"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_c9573cca","line":38,"range":{"start_line":38,"start_character":12,"end_line":38,"end_character":60},"updated":"2017-12-07 14:06:52.000000000","message":"I assume you intended to share the class variable among its derivatives, however, you assign to object.network_driver instead of BaseNetworkTask.network_driver.","commit_id":"b92060bd4673d33fceed4e5ea35dfb977534f285"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"6012e507b812d6baeaeb7ed1302aaab3eec82e13","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def _load_network_driver(self):"},{"line_number":37,"context_line":"        if not self.network_driver:"},{"line_number":38,"context_line":"            self.network_driver \u003d utils.get_network_driver()"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"class CalculateAmphoraDelta(BaseNetworkTask):"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_3265e31e","line":38,"range":{"start_line":38,"start_character":12,"end_line":38,"end_character":60},"in_reply_to":"df87a7cf_c9573cca","updated":"2017-12-07 23:47:21.000000000","message":"actually I *hadn\u0027t* intended to share it as a singleton -- I was simply trying to move where it was instantiated without changing any other aspect of how this works. It\u0027s *not* actually intended to be a singleton.","commit_id":"b92060bd4673d33fceed4e5ea35dfb977534f285"},{"author":{"_account_id":25239,"name":"Bar Elharar","email":"bar@redhat.com","username":"belharar"},"change_message_id":"f8e9a49c325c0af7827381534e28f182f7d8d0c7","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    def execute(self, loadbalancer, amphora):"},{"line_number":46,"context_line":"        LOG.debug(\"Calculating network delta for amphora id: %s\", amphora.id)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        self._load_network_driver()"},{"line_number":49,"context_line":"        # Figure out what networks we want"},{"line_number":50,"context_line":"        # seed with lb network(s)"},{"line_number":51,"context_line":"        vrrp_port \u003d self.network_driver.get_port(amphora.vrrp_port_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_2996e840","line":48,"range":{"start_line":48,"start_character":8,"end_line":48,"end_character":35},"updated":"2017-12-07 14:06:52.000000000","message":"This is repeated code.","commit_id":"b92060bd4673d33fceed4e5ea35dfb977534f285"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"6012e507b812d6baeaeb7ed1302aaab3eec82e13","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    def execute(self, loadbalancer, amphora):"},{"line_number":46,"context_line":"        LOG.debug(\"Calculating network delta for amphora id: %s\", amphora.id)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        self._load_network_driver()"},{"line_number":49,"context_line":"        # Figure out what networks we want"},{"line_number":50,"context_line":"        # seed with lb network(s)"},{"line_number":51,"context_line":"        vrrp_port \u003d self.network_driver.get_port(amphora.vrrp_port_id)"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_f26a1beb","line":48,"range":{"start_line":48,"start_character":8,"end_line":48,"end_character":35},"in_reply_to":"df87a7cf_2996e840","updated":"2017-12-07 23:47:21.000000000","message":"Yeah I guess it would be more efficient to do it as a property. I\u0027ll do that.","commit_id":"b92060bd4673d33fceed4e5ea35dfb977534f285"},{"author":{"_account_id":25239,"name":"Bar Elharar","email":"bar@redhat.com","username":"belharar"},"change_message_id":"38651b6cc6118badb76e712dbb60076b39e7e16d","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"class BaseNetworkTask(task.Task):"},{"line_number":33,"context_line":"    \"\"\"Base task to load drivers common to the tasks.\"\"\""},{"line_number":34,"context_line":"    _network_driver \u003d None"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    @property"},{"line_number":37,"context_line":"    def network_driver(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_c2bcdc07","line":34,"range":{"start_line":34,"start_character":4,"end_line":34,"end_character":26},"updated":"2017-12-08 08:19:21.000000000","message":"This class member is never written to. It will be forever null.","commit_id":"eea7d08269bc7485b679872f5f6b78fceb851515"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"21104f950b7b083f9bdc918a71c4c9fb567c7b7a","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"class BaseNetworkTask(task.Task):"},{"line_number":33,"context_line":"    \"\"\"Base task to load drivers common to the tasks.\"\"\""},{"line_number":34,"context_line":"    _network_driver \u003d None"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    @property"},{"line_number":37,"context_line":"    def network_driver(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_500c0840","line":34,"range":{"start_line":34,"start_character":4,"end_line":34,"end_character":26},"in_reply_to":"df87a7cf_c2bcdc07","updated":"2017-12-08 21:41:18.000000000","message":"It\u0027s an instance member too. Putting things here is not only for classes.\n\nI can remove it but then we get style warnings on the assignment in the property. It won\u0027t break the gates, it\u0027s just a style thing, but normally one does this.\n\nSee this for examples of how this works:\nhttps://gist.github.com/rm-you/14fe2b0dc06e86bde4e685ed0d0d3ea8","commit_id":"eea7d08269bc7485b679872f5f6b78fceb851515"}]}
