AU: Class to perform delta updates.

A class to perform delta updates and the associated unittests. Also,
change the delta diff generator executable to be able to apply a
delta, which is handy for debugging.

TEST=Attached unit test, hand-tested on real build images
BUG=552

Review URL: http://codereview.chromium.org/1718001
39 files changed
tree: 97804e4562fd9df05031d3c42bfa3dbb3d4c99dc
  1. action.h
  2. action_pipe.h
  3. action_pipe_unittest.cc
  4. action_processor.cc
  5. action_processor.h
  6. action_processor_unittest.cc
  7. action_unittest.cc
  8. bzip.cc
  9. bzip.h
  10. bzip_extent_writer.cc
  11. bzip_extent_writer.h
  12. bzip_extent_writer_unittest.cc
  13. cycle_breaker.cc
  14. cycle_breaker.h
  15. cycle_breaker_unittest.cc
  16. decompressing_file_writer.cc
  17. decompressing_file_writer.h
  18. decompressing_file_writer_unittest.cc
  19. delta_diff_generator.cc
  20. delta_diff_generator.h
  21. delta_diff_generator_unittest.cc
  22. delta_performer.cc
  23. delta_performer.h
  24. delta_performer_unittest.cc
  25. download_action.cc
  26. download_action.h
  27. download_action_unittest.cc
  28. extent_mapper.cc
  29. extent_mapper.h
  30. extent_mapper_unittest.cc
  31. extent_writer.cc
  32. extent_writer.h
  33. extent_writer_unittest.cc
  34. file_writer.cc
  35. file_writer.h
  36. file_writer_unittest.cc
  37. filesystem_copier_action.cc
  38. filesystem_copier_action.h
  39. filesystem_copier_action_unittest.cc
  40. filesystem_iterator.cc
  41. filesystem_iterator.h
  42. filesystem_iterator_unittest.cc
  43. gen_coverage_html.sh
  44. generate_delta_main.cc
  45. graph_types.h
  46. graph_utils.cc
  47. graph_utils.h
  48. graph_utils_unittest.cc
  49. gzip.cc
  50. gzip.h
  51. http_fetcher.h
  52. http_fetcher_unittest.cc
  53. install_plan.h
  54. integration_unittest.cc
  55. libcurl_http_fetcher.cc
  56. libcurl_http_fetcher.h
  57. local_coverage_rate.sh
  58. main.cc
  59. mock_file_writer.h
  60. mock_http_fetcher.cc
  61. mock_http_fetcher.h
  62. omaha_hash_calculator.cc
  63. omaha_hash_calculator.h
  64. omaha_hash_calculator_unittest.cc
  65. omaha_request_prep_action.cc
  66. omaha_request_prep_action.h
  67. omaha_request_prep_action_unittest.cc
  68. omaha_response_handler_action.cc
  69. omaha_response_handler_action.h
  70. omaha_response_handler_action_unittest.cc
  71. postinstall_runner_action.cc
  72. postinstall_runner_action.h
  73. postinstall_runner_action_unittest.cc
  74. SConstruct
  75. set_bootable_flag_action.cc
  76. set_bootable_flag_action.h
  77. set_bootable_flag_action_unittest.cc
  78. subprocess.cc
  79. subprocess.h
  80. subprocess_unittest.cc
  81. tarjan.cc
  82. tarjan.h
  83. tarjan_unittest.cc
  84. test_http_server.cc
  85. test_http_server.py
  86. test_utils.cc
  87. test_utils.h
  88. testrunner.cc
  89. topological_sort.cc
  90. topological_sort.h
  91. topological_sort_unittest.cc
  92. update_check_action.cc
  93. update_check_action.h
  94. update_check_action_unittest.cc
  95. update_metadata.proto
  96. utils.cc
  97. utils.h
  98. utils_unittest.cc
  99. zip_unittest.cc