)]}'
{"zaqar/storage/swift/messages.py":[{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"9db9cdb1266b2b979eebbfa789c6fedc846699f3","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    Messages are scoped by project + queue."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    message -\u003e Swift mapping:"},{"line_number":34,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":35,"context_line":"       | Attribute    | Storage location                        |"},{"line_number":36,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":37,"context_line":"       | Msg UUID     | Object name                             |"},{"line_number":38,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":39,"context_line":"       | Queue Name   | Container name prefix                   |"},{"line_number":40,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":41,"context_line":"       | Project name | Container name prefix                   |"},{"line_number":42,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":43,"context_line":"       | Created time | Object Creation Time                    |"},{"line_number":44,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":45,"context_line":"       | Msg Body     | Object content \u0027body\u0027                   |"},{"line_number":46,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":47,"context_line":"       | Client ID    | Object header \u0027ClientID\u0027                |"},{"line_number":48,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":49,"context_line":"       | Claim ID     | Object content \u0027claim_id\u0027               |"},{"line_number":50,"context_line":"       +--------------+-----------------------------------------+"},{"line_number":51,"context_line":"       | Expires      | Object Delete-After header              |"},{"line_number":52,"context_line":"       +--------------------------------------------------------+"},{"line_number":53,"context_line":"    \"\"\""},{"line_number":54,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1f1a1f67_770f0837","line":51,"range":{"start_line":33,"start_character":0,"end_line":51,"end_character":65},"updated":"2017-07-17 02:03:03.000000000","message":"this should be updated as well.","commit_id":"30111c27a8cd159697f9862e06ef50124159cbff"},{"author":{"_account_id":7385,"name":"Thomas Herve","email":"therve@redhat.com","username":"therve"},"change_message_id":"43834e8a6108e18b0a50fdfb471677de46a7b8e1","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":56,"context_line":"        super(MessageController, self).__init__(*args, **kwargs)"},{"line_number":57,"context_line":"        self._client \u003d self.driver.connection"},{"line_number":58,"context_line":"        self._claim_ctrl \u003d self.driver.claim_controller"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    @decorators.lazy_property(write\u003dFalse)"},{"line_number":61,"context_line":"    def _queue_ctrl(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_07ca664e","line":58,"updated":"2017-07-20 07:12:19.000000000","message":"You don\u0027t really need this one.","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":21387,"name":"gecong","email":"ge.cong@zte.com.cn","username":"gecong"},"change_message_id":"77f7eb22264a738ed6aa75f2d80d0475be3002f7","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":56,"context_line":"        super(MessageController, self).__init__(*args, **kwargs)"},{"line_number":57,"context_line":"        self._client \u003d self.driver.connection"},{"line_number":58,"context_line":"        self._claim_ctrl \u003d self.driver.claim_controller"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    @decorators.lazy_property(write\u003dFalse)"},{"line_number":61,"context_line":"    def _queue_ctrl(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_67ca3a1b","line":58,"in_reply_to":"1f1a1f67_07ca664e","updated":"2017-07-20 07:20:13.000000000","message":"Herve , thank for review, if I don\u0027t add this line , will arise \nAttributeError: \u0027MessageController\u0027 object has no attribute \u0027_claim_ctrl\u0027","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":7385,"name":"Thomas Herve","email":"therve@redhat.com","username":"therve"},"change_message_id":"51a79dc26c1ef277b532dfd7d759777e29424297","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":56,"context_line":"        super(MessageController, self).__init__(*args, **kwargs)"},{"line_number":57,"context_line":"        self._client \u003d self.driver.connection"},{"line_number":58,"context_line":"        self._claim_ctrl \u003d self.driver.claim_controller"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    @decorators.lazy_property(write\u003dFalse)"},{"line_number":61,"context_line":"    def _queue_ctrl(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_a78df2d4","line":58,"in_reply_to":"1f1a1f67_67ca3a1b","updated":"2017-07-20 07:22:44.000000000","message":"Just use self.driver.claim_controller direclty in is_claimed.","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":21387,"name":"gecong","email":"ge.cong@zte.com.cn","username":"gecong"},"change_message_id":"2074d5a8e17856f1bae0d65d13d6ac4545a00396","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":56,"context_line":"        super(MessageController, self).__init__(*args, **kwargs)"},{"line_number":57,"context_line":"        self._client \u003d self.driver.connection"},{"line_number":58,"context_line":"        self._claim_ctrl \u003d self.driver.claim_controller"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    @decorators.lazy_property(write\u003dFalse)"},{"line_number":61,"context_line":"    def _queue_ctrl(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_02c49491","line":58,"in_reply_to":"1f1a1f67_a78df2d4","updated":"2017-07-20 07:36:45.000000000","message":"thanks Herve , that is more clear","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":7385,"name":"Thomas Herve","email":"therve@redhat.com","username":"therve"},"change_message_id":"43834e8a6108e18b0a50fdfb471677de46a7b8e1","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            raise"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        def is_claimed(msg, headers):"},{"line_number":125,"context_line":"            if include_claimed or not msg[\u0027claim_id\u0027]:"},{"line_number":126,"context_line":"                return False"},{"line_number":127,"context_line":"            claim_obj \u003d self._claim_ctrl._get(queue, msg[\u0027claim_id\u0027],"},{"line_number":128,"context_line":"                                              project)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_87db1620","line":125,"updated":"2017-07-20 07:12:19.000000000","message":"Please do \"msg[\u0027claim_id\u0027] is None\" instead.","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":21387,"name":"gecong","email":"ge.cong@zte.com.cn","username":"gecong"},"change_message_id":"77f7eb22264a738ed6aa75f2d80d0475be3002f7","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            raise"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        def is_claimed(msg, headers):"},{"line_number":125,"context_line":"            if include_claimed or not msg[\u0027claim_id\u0027]:"},{"line_number":126,"context_line":"                return False"},{"line_number":127,"context_line":"            claim_obj \u003d self._claim_ctrl._get(queue, msg[\u0027claim_id\u0027],"},{"line_number":128,"context_line":"                                              project)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_07d946f3","line":125,"in_reply_to":"1f1a1f67_87db1620","updated":"2017-07-20 07:20:13.000000000","message":"Done","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":7385,"name":"Thomas Herve","email":"therve@redhat.com","username":"therve"},"change_message_id":"43834e8a6108e18b0a50fdfb471677de46a7b8e1","unresolved":false,"context_lines":[{"line_number":128,"context_line":"                                              project)"},{"line_number":129,"context_line":"            isClaim \u003d True if(claim_obj is not None and"},{"line_number":130,"context_line":"                              claim_obj[\u0027ttl\u0027] \u003e 0) else False"},{"line_number":131,"context_line":"            return isClaim"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"        def is_echo(msg, headers):"},{"line_number":134,"context_line":"            if echo:"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_07cf0658","line":131,"updated":"2017-07-20 07:12:19.000000000","message":"Instead:\n\nreturn claim_obj is not None and claim_obj[\u0027ttl\u0027] \u003e 0","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"},{"author":{"_account_id":21387,"name":"gecong","email":"ge.cong@zte.com.cn","username":"gecong"},"change_message_id":"77f7eb22264a738ed6aa75f2d80d0475be3002f7","unresolved":false,"context_lines":[{"line_number":128,"context_line":"                                              project)"},{"line_number":129,"context_line":"            isClaim \u003d True if(claim_obj is not None and"},{"line_number":130,"context_line":"                              claim_obj[\u0027ttl\u0027] \u003e 0) else False"},{"line_number":131,"context_line":"            return isClaim"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"        def is_echo(msg, headers):"},{"line_number":134,"context_line":"            if echo:"}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_e7d52ab9","line":131,"in_reply_to":"1f1a1f67_07cf0658","updated":"2017-07-20 07:20:13.000000000","message":"Done","commit_id":"4bef239c419cb49286e0c8491526e54ed788f67f"}]}
