)]}'
{"Engine/SBus/SBusPythonFacade/SBus.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                                                 pp_params,"},{"line_number":97,"context_line":"                                                 pn_params)"},{"line_number":98,"context_line":"        if n_status \u003c 0:"},{"line_number":99,"context_line":"            raise Exception(\u0027failed to recieve message on bus\u0027)"},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"        # The invocation was successful."},{"line_number":102,"context_line":"        # De-serialize the data"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_9b9c906b","line":99,"range":{"start_line":99,"start_character":18,"end_line":99,"end_character":27},"updated":"2016-06-30 06:38:40.000000000","message":"Can we create more specialized exception?","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"}],"Engine/SBus/SBusPythonFacade/SBusDatagram.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        \"\"\""},{"line_number":55,"context_line":"        self.command_ \u003d command"},{"line_number":56,"context_line":"        self.fds_ \u003d fds"},{"line_number":57,"context_line":"        self.md_ \u003d md"},{"line_number":58,"context_line":"        self.params_ \u003d params"},{"line_number":59,"context_line":"        self.task_id_ \u003d task_id"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_e0ffe363","line":56,"range":{"start_line":56,"start_character":13,"end_line":56,"end_character":17},"updated":"2016-06-30 06:38:40.000000000","message":"placing _ \u0027in front of\u0027 name is generally used, so _fds seems better for me.","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        \"\"\""},{"line_number":55,"context_line":"        self.command_ \u003d command"},{"line_number":56,"context_line":"        self.fds_ \u003d fds"},{"line_number":57,"context_line":"        self.md_ \u003d md"},{"line_number":58,"context_line":"        self.params_ \u003d params"},{"line_number":59,"context_line":"        self.task_id_ \u003d task_id"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    @staticmethod"},{"line_number":62,"context_line":"    def create_service_datagram(command, outfd, params\u003dNone, task_id\u003dNone):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_40f9977f","line":59,"range":{"start_line":57,"start_character":8,"end_line":59,"end_character":31},"updated":"2016-06-30 06:38:40.000000000","message":"ditto","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        fds \u003d [outfd]"},{"line_number":65,"context_line":"        return ClientSBusOutDatagram(command, fds, md, params, task_id)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    def get_num_fds(self):"},{"line_number":68,"context_line":"        return len(self.fds_)"},{"line_number":69,"context_line":"    num_fds \u003d property(get_num_fds, None)"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_e0d243d0","line":67,"range":{"start_line":67,"start_character":8,"end_line":67,"end_character":19},"updated":"2016-06-30 06:38:40.000000000","message":"These property functions had better start with \u0027_\u0027, if they are not used directly from outside","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        self.md_ \u003d json.loads(str_md)"},{"line_number":103,"context_line":"        cmd_params \u003d json.loads(str_params)"},{"line_number":104,"context_line":"        self.command_ \u003d cmd_params[\u0027command\u0027]"},{"line_number":105,"context_line":"        if \u0027params\u0027 in cmd_params:"},{"line_number":106,"context_line":"            self.params_ \u003d cmd_params[\u0027params\u0027]"},{"line_number":107,"context_line":"        else:"},{"line_number":108,"context_line":"            self.params_ \u003d None"},{"line_number":109,"context_line":"        if \u0027task_id\u0027 in cmd_params:"},{"line_number":110,"context_line":"            self.task_id_ \u003d cmd_params[\u0027task_id\u0027]"},{"line_number":111,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_604813b4","line":108,"range":{"start_line":105,"start_character":8,"end_line":108,"end_character":31},"updated":"2016-06-30 06:38:40.000000000","message":"How about this?\n\nself._params \u003d cmd_params.get(\u0027params\u0027)","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":106,"context_line":"            self.params_ \u003d cmd_params[\u0027params\u0027]"},{"line_number":107,"context_line":"        else:"},{"line_number":108,"context_line":"            self.params_ \u003d None"},{"line_number":109,"context_line":"        if \u0027task_id\u0027 in cmd_params:"},{"line_number":110,"context_line":"            self.task_id_ \u003d cmd_params[\u0027task_id\u0027]"},{"line_number":111,"context_line":"        else:"},{"line_number":112,"context_line":"            self.task_id_ \u003d None"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"    def get_fds(self):"},{"line_number":115,"context_line":"        return self.fds_"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_a0ccbb35","line":112,"range":{"start_line":109,"start_character":8,"end_line":112,"end_character":32},"updated":"2016-06-30 06:38:40.000000000","message":"ditto","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":136,"context_line":"    task_id \u003d property(get_task_id, None)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def get_service_out_fd(self):"},{"line_number":139,"context_line":"        for i in range(len(self.md_)):"},{"line_number":140,"context_line":"            if self.md_[i][\u0027type\u0027] \u003d\u003d SBUS_FD_SERVICE_OUT:"},{"line_number":141,"context_line":"                return self.fds_[i]"},{"line_number":142,"context_line":"        return None"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_20872bb6","line":139,"range":{"start_line":139,"start_character":17,"end_line":139,"end_character":22},"updated":"2016-06-30 06:38:40.000000000","message":"(nit) xrange is better\n\n# I found range also in other places, and that\u0027s why I set this as nit. We can change this in another commit","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":148,"context_line":"# In the past this was used for a allowing a storlet"},{"line_number":149,"context_line":"# to create new objects via a PUT on container"},{"line_number":150,"context_line":"# with X-Run-Storlet."},{"line_number":151,"context_line":"class ClientSBusInDatagram(object):"},{"line_number":152,"context_line":"    def __init__(self):"},{"line_number":153,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_12b56530","line":151,"range":{"start_line":151,"start_character":6,"end_line":151,"end_character":26},"updated":"2016-06-30 06:38:40.000000000","message":"Don\u0027t we need ServerSBusOutDatagram?","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":150,"context_line":"# with X-Run-Storlet."},{"line_number":151,"context_line":"class ClientSBusInDatagram(object):"},{"line_number":152,"context_line":"    def __init__(self):"},{"line_number":153,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_f2aff9e0","line":153,"range":{"start_line":153,"start_character":8,"end_line":153,"end_character":12},"updated":"2016-06-30 06:38:40.000000000","message":"How about raising NotImplementedError?","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"}],"Engine/SBus/SBusPythonFacade/SBusStorletCommand.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b2942e21eb1cb297597d0c6720b6e1e43d19a92e","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"SBUS_CMD_HALT \u003d \u0027SBUS_CMD_HALT\u0027"},{"line_number":17,"context_line":"SBUS_CMD_EXECUTE \u003d \u0027SBUS_CMD_EXECUTE\u0027"},{"line_number":18,"context_line":"SBUS_CMD_START_DAEMON \u003d \u0027SBUS_CMD_START_DAEMON\u0027"},{"line_number":19,"context_line":"SBUS_CMD_STOP_DAEMON \u003d \u0027SBUS_CMD_STOP_DAEMON\u0027"},{"line_number":20,"context_line":"SBUS_CMD_DAEMON_STATUS \u003d \u0027SBUS_CMD_DAEMON_STATUS\u0027"},{"line_number":21,"context_line":"SBUS_CMD_STOP_DAEMONS \u003d \u0027SBUS_CMD_STOP_DAEMONS\u0027"},{"line_number":22,"context_line":"SBUS_CMD_PING \u003d \u0027SBUS_CMD_PING\u0027"},{"line_number":23,"context_line":"SBUS_CMD_DESCRIPTOR \u003d \u0027SBUS_CMD_DESCRIPTOR\u0027"},{"line_number":24,"context_line":"SBUS_CMD_CANCEL \u003d \u0027SBUS_CMD_CANCEL\u0027"},{"line_number":25,"context_line":"SBUS_CMD_NOP \u003d \u0027SBUS_CMD_NOP\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3aaa91ec_1b80a0be","line":25,"range":{"start_line":16,"start_character":0,"end_line":25,"end_character":29},"updated":"2016-06-30 06:38:40.000000000","message":"enum-like style seems more efficient for me.\nCan I ask a reason for this change?\n\n(I don\u0027t think this change affect so much, but just want to know the motivation)","commit_id":"873a68986a2cfe1083ccb42a457670be102c8ea1"}]}
