diff --git a/DESIGN.md b/DESIGN.md index 4f1a1d5..d1acf05 100644 --- a/DESIGN.md +++ b/DESIGN.md @@ -15,32 +15,43 @@ and dir1/file3): "start_time": 1455590487, "end_time": 1455590487, "files": [ -{ -"path": "file1", -"content": "0:0:2:6108", -"hash": "a533c0398194f93b90bd945381ea4f2adb0ad50bd99fd3585b9ec809da395b51", + { + "path": "file1", + "content": "0:0:2:6108", + "hash": "a533c0398194f93b90bd945381ea4f2adb0ad50bd99fd3585b9ec809da395b51", "size": 151901, "time": 1455590487, "mode": 420 -}, { -"path": "file2", -"content": "2:6108:3:7586", -"hash": "f6111c1562fde4df9c0bafe2cf665778c6e25b49bcab5fec63675571293ed644", "size": 172071, -"time": 1455590487, -"mode": 420 -}, { + }, + { + "path": "file2", + "content": "2:6108:3:7586", + "hash": "f6111c1562fde4df9c0bafe2cf665778c6e25b49bcab5fec63675571293ed644", + "size": 172071, + "time": 1455590487, + "mode": 420 + }, + { "path": "dir1/", "size": 102, "time": 1455590487, "mode": 2147484096 -}, { -"path": "dir1/file3", -"content": "3:7586:4:1734", -"hash": "6bf9150424169006388146908d83d07de413de05d1809884c38011b2a74d9d3f", "size": 118457, -"time": 1455590487, -"mode": 420 -} ], -"chunks": [ "9f25db00881a10a8e7bcaa5a12b2659c2358a579118ea45a73c2582681f12919", "6e903aace6cd05e26212fcec1939bb951611c4179c926351f3b20365ef2c212f", "4b0d017bce5491dbb0558c518734429ec19b8a0d7c616f68ddf1b477916621f7", "41841c98800d3b9faa01b1007d1afaf702000da182df89793c327f88a9aba698", "7c11ee13ea32e9bb21a694c5418658b39e8894bbfecd9344927020a9e3129718" + }, + { + "path": "dir1/file3", + "content": "3:7586:4:1734", + "hash": "6bf9150424169006388146908d83d07de413de05d1809884c38011b2a74d9d3f", + "size": 118457, + "time": 1455590487, + "mode": 420 + } + ], + "chunks": [ + "9f25db00881a10a8e7bcaa5a12b2659c2358a579118ea45a73c2582681f12919", + "6e903aace6cd05e26212fcec1939bb951611c4179c926351f3b20365ef2c212f", + "4b0d017bce5491dbb0558c518734429ec19b8a0d7c616f68ddf1b477916621f7", + "41841c98800d3b9faa01b1007d1afaf702000da182df89793c327f88a9aba698", + "7c11ee13ea32e9bb21a694c5418658b39e8894bbfecd9344927020a9e3129718" ], "lengths": [ 64638, @@ -48,7 +59,8 @@ and dir1/file3): 170593, 124309, 1734 -] } + ] +} ``` When Duplicacy splits a file in chunks, if the end of a file is reached and yet the boundary marker for terminating a chunk @@ -80,10 +92,14 @@ contains sequences of chunk hashes and other fixed size fields: "start_time": 1455590487, "tag": "first", "end_time": 1455590487, -"file_sequence": [ "21e4c69f3832e32349f653f31f13cefc7c52d52f5f3417ae21f2ef5a479c3437", + "file_sequence": [ + "21e4c69f3832e32349f653f31f13cefc7c52d52f5f3417ae21f2ef5a479c3437", ], "chunk_sequence": [ -"8a36ffb8f4959394fd39bba4f4a464545ff3dd6eed642ad4ccaa522253f2d5d6" ], -"length_sequence": [ "fc2758ae60a441c244dae05f035136e6dd33d3f3a0c5eb4b9025a9bed1d0c328" -] } + "8a36ffb8f4959394fd39bba4f4a464545ff3dd6eed642ad4ccaa522253f2d5d6" + ], + "length_sequence": [ + "fc2758ae60a441c244dae05f035136e6dd33d3f3a0c5eb4b9025a9bed1d0c328" + ] +} ```