)]}'
{"bin/glance-replicator":[{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"56176374cf93d43fc1f88415471cd0e832eacdb2","unresolved":false,"context_lines":[{"line_number":282,"context_line":"    print _(\u0027Total size is %d bytes across %d images\u0027) % (total_size, count)"},{"line_number":283,"context_line":""},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"def replication_dump(options, args, imageservice\u003dNone):"},{"line_number":286,"context_line":"    \"\"\"%(prog)s dump \u003cserver:port\u003e \u003cpath\u003e"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"    Dump the contents of a glance instance to local disk."}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAALn%2F%2F2bg%3D","line":285,"updated":"2012-11-01 14:39:30.000000000","message":"I\u0027m not loving this parameterization of the image service class, as the same change will be required to test a bunch of other replication_* methods.\n\nWould it make sense to factor out that logic into say:\n\n    def get_client(server, port, token):\n        return ImageService(httplib.HTTPConnection(server, port), token)\n\nthat could easily be mocked or overridden for tests?","commit_id":"ca1bdd80ab826e0e9b625d867011562352bfdb74"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c2026ce3654427814209902db5d24d814024cf77","unresolved":false,"context_lines":[{"line_number":282,"context_line":"    print _(\u0027Total size is %d bytes across %d images\u0027) % (total_size, count)"},{"line_number":283,"context_line":""},{"line_number":284,"context_line":""},{"line_number":285,"context_line":"def replication_dump(options, args, imageservice\u003dNone):"},{"line_number":286,"context_line":"    \"\"\"%(prog)s dump \u003cserver:port\u003e \u003cpath\u003e"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"    Dump the contents of a glance instance to local disk."}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAALn%2F%2F2Z8%3D","line":285,"in_reply_to":"AAAALn%2F%2F2bg%3D","updated":"2012-11-01 14:46:13.000000000","message":"Hmmm. I hadn\u0027t thought of that. Sure, I\u0027ll do it now.","commit_id":"ca1bdd80ab826e0e9b625d867011562352bfdb74"}],"glance/tests/unit/test_glance_replicator.py":[{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"712dbab84fb49a1cbe7728b92cb0720f66495da8","unresolved":false,"context_lines":[{"line_number":246,"context_line":"        headers, body \u003d c.add_image_meta(image_meta)"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"class FakeHttpResponse(object):"},{"line_number":250,"context_line":"    def __init__(self, headers, data):"},{"line_number":251,"context_line":"        self.headers \u003d headers"},{"line_number":252,"context_line":"        self.data \u003d StringIO.StringIO(data)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALn%2F%2F44g%3D","line":249,"updated":"2012-10-30 15:59:20.000000000","message":"Can you use the FakeHTTPResponse class in glance/tests/utils.py ?","commit_id":"77c0f7dd0ea83d4ba77b7cd1f888f6b5f26cf6aa"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"db0310ed24a584196a94e07391e0afa59a5d4314","unresolved":false,"context_lines":[{"line_number":246,"context_line":"        headers, body \u003d c.add_image_meta(image_meta)"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"class FakeHttpResponse(object):"},{"line_number":250,"context_line":"    def __init__(self, headers, data):"},{"line_number":251,"context_line":"        self.headers \u003d headers"},{"line_number":252,"context_line":"        self.data \u003d StringIO.StringIO(data)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALn%2F%2F4Eg%3D","line":249,"in_reply_to":"AAAALn%2F%2F44g%3D","updated":"2012-10-31 08:22:18.000000000","message":"Done","commit_id":"77c0f7dd0ea83d4ba77b7cd1f888f6b5f26cf6aa"}]}
