)]}'
{"swift/common/data_migration_common.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5edfa34839d79f06dab5a8e48b37d9d155aef9d1","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        Migrate object from source to destination container."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        :param obj: object name"},{"line_number":38,"context_line":"        :param original_env: original environ of the application"},{"line_number":39,"context_line":"        \"\"\""},{"line_number":40,"context_line":"        metadata, read_length, body_stream, \\"},{"line_number":41,"context_line":"            content_type, timestamp \u003d self.get_object(obj)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_809417e9","line":38,"updated":"2014-09-18 17:00:06.000000000","message":"nit: add :param app:","commit_id":"59fd56fe92f76a81ea4fca43188ba40591c7eade"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5edfa34839d79f06dab5a8e48b37d9d155aef9d1","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        :param metadata: metadata of an object"},{"line_number":65,"context_line":"        :param sys_metadata: system metadata of an object"},{"line_number":66,"context_line":"        :param content_type: content type of an object"},{"line_number":67,"context_line":"        :param timestamp: timestamp of an object in the old storage"},{"line_number":68,"context_line":"        :returns HTTP code result of an upload operation"},{"line_number":69,"context_line":"        \"\"\""},{"line_number":70,"context_line":"        new_env \u003d env"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_604813b4","line":67,"updated":"2014-09-18 17:00:06.000000000","message":"nit: add :param app:","commit_id":"59fd56fe92f76a81ea4fca43188ba40591c7eade"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5edfa34839d79f06dab5a8e48b37d9d155aef9d1","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        :param timestamp: timestamp of an object in the old storage"},{"line_number":68,"context_line":"        :returns HTTP code result of an upload operation"},{"line_number":69,"context_line":"        \"\"\""},{"line_number":70,"context_line":"        new_env \u003d env"},{"line_number":71,"context_line":"        new_env[\u0027REQUEST_METHOD\u0027] \u003d \u0027PUT\u0027"},{"line_number":72,"context_line":"        new_env[\u0027wsgi.input\u0027] \u003d data"},{"line_number":73,"context_line":"        new_env[\u0027CONTENT_LENGTH\u0027] \u003d length"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_00010739","line":70,"updated":"2014-09-18 17:00:06.000000000","message":"this assignment seems unnecessary now, I guess it may be a hangover from having new_env \u003d dict(env)","commit_id":"59fd56fe92f76a81ea4fca43188ba40591c7eade"}],"swift/common/middleware/data_migration.py":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"a8ac1af1d50f79883f1f2b80d53f8d580c2125bf","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"# Swift driver based on python-swiftclient (Optional)"},{"line_number":62,"context_line":"driver_swift_keys \u003d token-url,user,key"},{"line_number":63,"context_line":"driver_swift_module \u003d"},{"line_number":64,"context_line":"swift.common.data_migrator_drivers:SwiftAccessDriver"},{"line_number":65,"context_line":"*********************************************************"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"fa98f980_2ac9be79","line":63,"updated":"2014-09-17 01:36:52.000000000","message":"This documentation need to be updated as you have changed the name of the swift driver.. and you may need to make reference to and between the Local and Remote Swift Access Drivers.\n\nAccording to the comments above you are assigning the class to the name.. do we need to change the swift driver name?\n\nSeeing as the LocalSwiftAccessDriver is to be used to migrate things across the same swift cluster, maybe we can just call it local.. something like:\n\n  supported_drivers \u003d fsystem,swift,local\n  ...\n  # Swift driver based on python-swiftclient (Optional)\n  driver_swift_keys \u003d token-url,user,key\n  driver_swift_module \u003d \n  swift.common.data_migrator_drivers:RemoteSwiftAccessDriver\n\n  # Local Swift driver based on python-swiftclient (Optional)\n  driver_local_keys \u003d token-url,user,key\n  driver_local_module \u003d \n  swift.common.data_migrator_drivers:LocalSwiftAccessDriver","commit_id":"87187cf0c30b168b53b02294fc38d4ad3aaf515c"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5edfa34839d79f06dab5a8e48b37d9d155aef9d1","unresolved":false,"context_lines":[{"line_number":255,"context_line":"        :returns Response with migrated object."},{"line_number":256,"context_line":"        :raises DataMigrationError when operation fails"},{"line_number":257,"context_line":"        \"\"\""},{"line_number":258,"context_line":"        orig_env \u003d dict(env)"},{"line_number":259,"context_line":"        access_resolver \u003d self.remote_driver_resolver(container_md,"},{"line_number":260,"context_line":"                                                      self.migration_conf)"},{"line_number":261,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_c0437f6a","line":258,"updated":"2014-09-18 17:00:06.000000000","message":"I *think* I managed to convince myself that we do need this copy. \u0027env\u0027 gets used by the object upload PUT, and \u0027orig_env\u0027 gets used to repeat the original GET.","commit_id":"59fd56fe92f76a81ea4fca43188ba40591c7eade"},{"author":{"_account_id":9625,"name":"Thiago da Silva","email":"thiagodasilva@gmail.com","username":"thiago"},"change_message_id":"3e31a26b8b7e0c8217f2c35f703f1465fcbe18fb","unresolved":false,"context_lines":[{"line_number":255,"context_line":"        :returns Response with migrated object."},{"line_number":256,"context_line":"        :raises DataMigrationError when operation fails"},{"line_number":257,"context_line":"        \"\"\""},{"line_number":258,"context_line":"        orig_env \u003d dict(env)"},{"line_number":259,"context_line":"        access_resolver \u003d self.remote_driver_resolver(container_md,"},{"line_number":260,"context_line":"                                                      self.migration_conf)"},{"line_number":261,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_bc176a44","line":258,"in_reply_to":"fa98f980_c0437f6a","updated":"2014-09-19 16:21:00.000000000","message":"yes, i agree. had to study a little bit, but i understand now how it works...","commit_id":"59fd56fe92f76a81ea4fca43188ba40591c7eade"}]}
