#include <patcher.hpp>
kzh::patcher::patcher |
( |
config_t const & |
config | ) |
|
|
explicit |
Given resource manager must have the paths resolved, see downloader::resolve_paths()
kzh::patcher::~patcher |
( |
| ) |
|
|
virtual |
- Exceptions
-
invalid_state | if no new releases are pending |
invalid_resource | if the release manifest couldn't be DLed |
missing_node | if <release> isn't defined |
missing_children | if <release> has no operations/empty |
invalid_manifest | if:
- the release manifest is empty
- the release manifest has no <release> node
- the release manifest's <release> node has no children (operations)
|
missing_child | if:
- <create> has no <source> or <target> children
- <delete> has no <target> child
|
missing_attribute | if:
- <create>/<source> has no "checksum" or "size" attributes
|
Returns true if the patch was successfully applied, false otherwise.
References kzh::KARAZEH_EXPORT::cache_path, kzh::file_manager::create_directory(), kzh::logger::debug(), kzh::logger::error(), kzh::KARAZEH_EXPORT::file_manager, kzh::release_manifest::id, kzh::logger::info(), kzh::release_manifest::operations, kzh::file_manager::remove_directory(), kzh::STAGE_OK, and kzh::release_manifest::tag.
Referenced by TEST_CASE().
The documentation for this class was generated from the following files: