)]}'
{"designate/mdns/service.py":[{"author":{"_account_id":741,"name":"Kiall Mac Innes","email":"kiall@macinnes.ie","username":"kiall"},"change_message_id":"88d526e4f70790db693dc0d96213e77a9fbb6ebf","unresolved":false,"context_lines":[{"line_number":22,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class Service(service.Service, SocketServer.ThreadingMixIn,"},{"line_number":26,"context_line":"              SocketServer.TCPServer):"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def __init__(self, *args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ae8d1ca_13369703","line":25,"updated":"2014-05-29 15:08:38.000000000","message":"I\u0027d be very scared of mixing tradition threading with eventlet, I suspect we can replace the SocketServer stuff with some simpler socket.open\u0027s etc.\n\nEssentially similar to the commented code you have in https://review.openstack.org/#/c/96202/1/designate/tests/test_mdns/test_service.py - just the server rather than client pieces :)\n\nAdditionally, doing it that way let\u0027s a single service listen on both TCP and UDP 53 at once.","commit_id":"b1208c6d33fc14aff9b46c25fb07a949a90683fb"},{"author":{"_account_id":741,"name":"Kiall Mac Innes","email":"kiall@macinnes.ie","username":"kiall"},"change_message_id":"88d526e4f70790db693dc0d96213e77a9fbb6ebf","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":29,"context_line":"        super(Service, self).__init__(*args, **kwargs)"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"        self.mdns_svc_port \u003d 53  # TODO(eankutse) this should be configurable"},{"line_number":32,"context_line":"        # TODO(eankutse): should we be getting a connection to central here?"},{"line_number":33,"context_line":"        # TODO(eankutse): to storage?"},{"line_number":34,"context_line":"        #self.storage_api \u003d storage_api.StorageAPI()"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ae8d1ca_d3f8af4b","line":31,"updated":"2014-05-29 15:08:38.000000000","message":"Yes, it should be :)","commit_id":"b1208c6d33fc14aff9b46c25fb07a949a90683fb"},{"author":{"_account_id":741,"name":"Kiall Mac Innes","email":"kiall@macinnes.ie","username":"kiall"},"change_message_id":"88d526e4f70790db693dc0d96213e77a9fbb6ebf","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        super(Service, self).__init__(*args, **kwargs)"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"        self.mdns_svc_port \u003d 53  # TODO(eankutse) this should be configurable"},{"line_number":32,"context_line":"        # TODO(eankutse): should we be getting a connection to central here?"},{"line_number":33,"context_line":"        # TODO(eankutse): to storage?"},{"line_number":34,"context_line":"        #self.storage_api \u003d storage_api.StorageAPI()"},{"line_number":35,"context_line":"        LOG.debug(\"designate-mdns setting up for DNS protocol communications\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ae8d1ca_b39403e3","line":32,"updated":"2014-05-29 15:08:38.000000000","message":"No, we\u0027ll want to talk straight to storage for most stuff..\n\nThere may be a need at some point to talk to central for some things, but I think we can start without it.","commit_id":"b1208c6d33fc14aff9b46c25fb07a949a90683fb"},{"author":{"_account_id":741,"name":"Kiall Mac Innes","email":"kiall@macinnes.ie","username":"kiall"},"change_message_id":"88d526e4f70790db693dc0d96213e77a9fbb6ebf","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"        self.mdns_svc_port \u003d 53  # TODO(eankutse) this should be configurable"},{"line_number":32,"context_line":"        # TODO(eankutse): should we be getting a connection to central here?"},{"line_number":33,"context_line":"        # TODO(eankutse): to storage?"},{"line_number":34,"context_line":"        #self.storage_api \u003d storage_api.StorageAPI()"},{"line_number":35,"context_line":"        LOG.debug(\"designate-mdns setting up for DNS protocol communications\")"},{"line_number":36,"context_line":"        self._setup_as_DNS_daemon()"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ae8d1ca_d38fcfca","line":33,"updated":"2014-05-29 15:08:38.000000000","message":"Yep :)","commit_id":"b1208c6d33fc14aff9b46c25fb07a949a90683fb"},{"author":{"_account_id":741,"name":"Kiall Mac Innes","email":"kiall@macinnes.ie","username":"kiall"},"change_message_id":"88d526e4f70790db693dc0d96213e77a9fbb6ebf","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        #   what region this instance belongs to,"},{"line_number":49,"context_line":"        #   a list of name servers to interact with"},{"line_number":50,"context_line":"        #   maybe even the port on which to run"},{"line_number":51,"context_line":"        pass"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def _setup_as_DNS_daemon(self):"},{"line_number":54,"context_line":"        # sit on the given port on all interfaces of the host"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ae8d1ca_73035b42","line":51,"updated":"2014-05-29 15:08:38.000000000","message":"I think these can just be included in the main designate config file and loaded as normal?","commit_id":"b1208c6d33fc14aff9b46c25fb07a949a90683fb"},{"author":{"_account_id":741,"name":"Kiall Mac Innes","email":"kiall@macinnes.ie","username":"kiall"},"change_message_id":"88d526e4f70790db693dc0d96213e77a9fbb6ebf","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        #   maybe even the port on which to run"},{"line_number":51,"context_line":"        pass"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def _setup_as_DNS_daemon(self):"},{"line_number":54,"context_line":"        # sit on the given port on all interfaces of the host"},{"line_number":55,"context_line":"        address \u003d (\u0027\u0027, self.mdns_svc_port)"},{"line_number":56,"context_line":"        server \u003d SocketServer.TCPServer(address, MdnsRequestHandler)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ae8d1ca_f34beb84","line":53,"updated":"2014-05-29 15:08:38.000000000","message":"Most of this belongs in the start/stop/wait methods.\n\nBut, I think we need to refactor designate/service.py into two classes.\n\n1) The base class.\n2) A ServiceRpc or RpcService class that extends the base, and does the oslo-messaging pieces.","commit_id":"b1208c6d33fc14aff9b46c25fb07a949a90683fb"}]}
