23 #include <aws/core/utils/logging/LogMacros.h> 24 #include <boost/function.hpp> 39 boost::function<std::vector<std::string> ()> deletion_list_callback,
40 const int interval_period_s)
42 deletion_list_callback_(
std::move(deletion_list_callback)),
43 interval_period_s_(interval_period_s)
54 std::lock_guard<std::mutex> lock(
mutex_);
56 AWS_LOG_INFO(__func__,
"Failed to start PeriodicFileDeleter, deleter already active");
62 AWS_LOG_INFO(__func__,
"PeriodicFileDeleter started");
67 AWS_LOG_INFO(__func__,
"Stopping PeriodicFileDeleter");
68 std::lock_guard<std::mutex> lock(
mutex_);
84 for (
const auto& file: files_to_delete) {
85 AWS_LOGSTREAM_INFO(__func__,
"Deleting file " << file);
88 AWS_LOGSTREAM_ERROR(__func__,
"Failed to delete file " << file <<
", skipping.");
boost::function< std::vector< std::string >)> deletion_list_callback_
const int interval_period_s_
Aws::Rosbag::RecorderErrorCode DeleteFile(const std::string &file_path)
delete a file
PeriodicFileDeleter(boost::function< std::vector< std::string >()> deletion_list_callback, const int interval_period_s=10)