<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>file_management_factory.h</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/include/file_management/file_upload/</path>
    <filename>file__management__factory_8h</filename>
    <includes id="file__manager_8h" name="file_manager.h" local="no" imported="no">file_management/file_upload/file_manager.h</includes>
    <includes id="file__upload__streamer_8h" name="file_upload_streamer.h" local="no" imported="no">file_management/file_upload/file_upload_streamer.h</includes>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
    <member kind="function">
      <type>std::shared_ptr&lt; FileUploadStreamer&lt; T &gt; &gt;</type>
      <name>createFileUploadStreamer</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a82ac3428aad08f3b0ca597366d2b3072</anchor>
      <arglist>(std::shared_ptr&lt; O &gt; file_manager, FileUploadStreamerOptions file_manager_options)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_manager.h</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/include/file_management/file_upload/</path>
    <filename>file__manager_8h</filename>
    <includes id="file__manager__strategy_8h" name="file_manager_strategy.h" local="no" imported="no">file_management/file_upload/file_manager_strategy.h</includes>
    <class kind="class">Aws::FileManagement::DataReader</class>
    <class kind="class">Aws::FileManagement::FileManager</class>
    <class kind="class">Aws::FileManagement::FileObject</class>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
  </compound>
  <compound kind="file">
    <name>file_manager_options.h</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/include/file_management/</path>
    <filename>file__manager__options_8h</filename>
    <class kind="struct">Aws::FileManagement::FileManagerStrategyOptions</class>
    <class kind="struct">Aws::FileManagement::TokenStoreOptions</class>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
    <member kind="variable" static="yes">
      <type>static const FileManagerStrategyOptions</type>
      <name>kDefaultFileManagerStrategyOptions</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>aacb2609a9055a4e5411cbb95be8366cc</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_manager_strategy.cpp</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/src/file_upload/</path>
    <filename>file__manager__strategy_8cpp</filename>
    <includes id="file__manager_8h" name="file_manager.h" local="no" imported="no">file_management/file_upload/file_manager.h</includes>
    <includes id="file__manager__strategy_8h" name="file_manager_strategy.h" local="yes" imported="no">file_management/file_upload/file_manager_strategy.h</includes>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
    <member kind="define">
      <type>#define</type>
      <name>KB_TO_BYTES</name>
      <anchorfile>file__manager__strategy_8cpp.html</anchorfile>
      <anchor>ae8be967e4a4d0cc5617ced744681f734</anchor>
      <arglist>(x)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static const std::string</type>
      <name>kTokenStoreFile</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a377d1d3062741becbc6aa370ffb854f8</anchor>
      <arglist>(&quot;token_store.info&quot;)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printCache</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a379a5c68e255603cf3fa6a00530002ad</anchor>
      <arglist>(std::unordered_map&lt; DataToken, FileTokenInfo &gt; token_store, std::unordered_map&lt; std::string, std::list&lt; DataToken &gt;&gt; file_tokens, std::unordered_map&lt; std::string, FileTokenInfo &gt; staged_tokens_)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>sanitizePath</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a8e0c3f9131f638930ac4e724395378dc</anchor>
      <arglist>(std::string &amp;path)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_manager_strategy.h</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/include/file_management/file_upload/</path>
    <filename>file__manager__strategy_8h</filename>
    <includes id="file__manager__options_8h" name="file_manager_options.h" local="no" imported="no">file_management/file_manager_options.h</includes>
    <class kind="class">Aws::FileManagement::DataManagerStrategy</class>
    <class kind="class">Aws::FileManagement::FileManagerStrategy</class>
    <class kind="class">Aws::FileManagement::FileTokenInfo</class>
    <class kind="class">Aws::FileManagement::TokenStore</class>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
    <member kind="typedef">
      <type>uint64_t</type>
      <name>DataToken</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a315a51d5a423c1ccce7f5e3dd11ae6e7</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>TokenStatus</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a64047f0cdcaed6455294d9990bd1a615</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ACTIVE</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a64047f0cdcaed6455294d9990bd1a615a77ea1fea0d077b36e21646ee115570e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INACTIVE</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a64047f0cdcaed6455294d9990bd1a615a57814928d319f94a89f1b6616f44541c</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator!=</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a1bb653512f7e1c26ba76901f8e0e4245</anchor>
      <arglist>(const FileTokenInfo &amp;lhs, const FileTokenInfo &amp;rhs)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator==</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a25421dbb345cdb807f320ca23186bab2</anchor>
      <arglist>(const FileTokenInfo &amp;lhs, const FileTokenInfo &amp;rhs)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>sanitizePath</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a8e0c3f9131f638930ac4e724395378dc</anchor>
      <arglist>(std::string &amp;path)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr const char *</type>
      <name>kEofKey</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a05d2749decdaf93c546eb216891a63c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr const char *</type>
      <name>kFilePathKey</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a2fa1e2c9f19c265ea50545ebd07169e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr const char *</type>
      <name>kPositionKey</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a9de54ef55dafff3705511e2b20f1722d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_manager_strategy_test.cpp</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/test/file_management/</path>
    <filename>file__manager__strategy__test_8cpp</filename>
    <includes id="file__manager__strategy_8h" name="file_manager_strategy.h" local="no" imported="no">file_management/file_upload/file_manager_strategy.h</includes>
    <class kind="class">FileManagerStrategyTest</class>
    <class kind="class">MockFileManagerStrategy</class>
    <class kind="class">SanitizePathTest</class>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a2228481dddaaadf04e16074ad5a1adbc</anchor>
      <arglist>(FileManagerStrategyTest, restart_without_token)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a5f2d8b83f9dd73f0a773a8e3a54001c6</anchor>
      <arglist>(FileManagerStrategyTest, fail_token_restart_from_last_location)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a9f552ca2c01bcb6221e6b7b558ed7c3d</anchor>
      <arglist>(FileManagerStrategyTest, start_success)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>acabcfe4e32bd2bc7592ae0aa2bfae288</anchor>
      <arglist>(FileManagerStrategyTest, discover_stored_files)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a4ff7051d0bce9085e9a5f9834507e60b</anchor>
      <arglist>(FileManagerStrategyTest, get_file_to_read_gets_newest)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a8a27d792eeb5f6db281537794279c38f</anchor>
      <arglist>(FileManagerStrategyTest, rotate_large_files)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>aab6e7cdd94ecd596a016a6a07069091f</anchor>
      <arglist>(FileManagerStrategyTest, resolve_token_deletes_file)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a77d4381b7b08f1c743cee7494610f924</anchor>
      <arglist>(FileManagerStrategyTest, on_storage_limit_delete_oldest_file)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>aa56ea606f35703d17fff2c8c25e55819</anchor>
      <arglist>(SanitizePathTest, sanitizePath_home_set)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a23351edb3b377eb33cf2f1b84bbac7ab</anchor>
      <arglist>(SanitizePathTest, sanitizePath_home_not_set_roshome_set)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a172ac38d75e31677dbfa3d6b6e49ac84</anchor>
      <arglist>(SanitizePathTest, sanitizePath_home_not_set_roshome_not_set)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__manager__strategy__test_8cpp.html</anchorfile>
      <anchor>a4c949267a72abf1f3d00c546d52f61f2</anchor>
      <arglist>(SanitizePathTest, sanitizePath_adds_trailing_slash)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_upload_streamer.h</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/include/file_management/file_upload/</path>
    <filename>file__upload__streamer_8h</filename>
    <includes id="file__manager_8h" name="file_manager.h" local="no" imported="no">file_management/file_upload/file_manager.h</includes>
    <includes id="file__upload__task_8h" name="file_upload_task.h" local="no" imported="no">file_management/file_upload/file_upload_task.h</includes>
    <class kind="class">Aws::FileManagement::FileUploadStreamer</class>
    <class kind="struct">Aws::FileManagement::FileUploadStreamerOptions</class>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
    <member kind="variable" static="yes">
      <type>static constexpr std::chrono::milliseconds</type>
      <name>kTimeout</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>adb85e12cc36e70ba0432ff94f0c7c8d3</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_upload_streamer_test.cpp</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/test/file_management/</path>
    <filename>file__upload__streamer__test_8cpp</filename>
    <includes id="file__manager_8h" name="file_manager.h" local="no" imported="no">file_management/file_upload/file_manager.h</includes>
    <includes id="file__management__factory_8h" name="file_management_factory.h" local="no" imported="no">file_management/file_upload/file_management_factory.h</includes>
    <class kind="class">FileStreamerTest</class>
    <class kind="class">MockDataReader</class>
    <class kind="class">MockSink</class>
    <member kind="typedef">
      <type>std::shared_ptr&lt; Task&lt; std::string &gt; &gt;</type>
      <name>SharedFileUploadTask</name>
      <anchorfile>file__upload__streamer__test_8cpp.html</anchorfile>
      <anchor>ade405f6709d7eb65206bb8c6bd651a02</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__upload__streamer__test_8cpp.html</anchorfile>
      <anchor>a0baa862259100ed6b627254690d95294</anchor>
      <arglist>(FileStreamerTest, success_on_network_and_file)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__upload__streamer__test_8cpp.html</anchorfile>
      <anchor>add777b928b98c57797e49a146adb575e</anchor>
      <arglist>(FileStreamerTest, fail_enqueue_retry)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__upload__streamer__test_8cpp.html</anchorfile>
      <anchor>ad46bdde494e8a32acaf4c7ab53362230</anchor>
      <arglist>(FileStreamerTest, fail_task_clears_queue)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>file__upload__streamer__test_8cpp.html</anchorfile>
      <anchor>a462cc829069a2af8937dae5ee79e1fc2</anchor>
      <arglist>(FileStreamerTest, success_task_does_not_clear_queue)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const FileUploadStreamerOptions</type>
      <name>kFileManagerOptions</name>
      <anchorfile>file__upload__streamer__test_8cpp.html</anchorfile>
      <anchor>a5a25e2c0463791798a6a753e0394b35d</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>file_upload_task.h</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/include/file_management/file_upload/</path>
    <filename>file__upload__task_8h</filename>
    <includes id="file__manager_8h" name="file_manager.h" local="no" imported="no">file_management/file_upload/file_manager.h</includes>
    <class kind="class">Aws::FileManagement::FileUploadTask</class>
    <class kind="class">Aws::FileManagement::FileUploadTaskAsync</class>
    <namespace>Aws</namespace>
    <namespace>Aws::FileManagement</namespace>
    <member kind="typedef">
      <type>std::shared_ptr&lt; FileUploadTask&lt; T &gt; &gt;</type>
      <name>FileUploadTaskPtr</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a1a18aed89445c481dc281ed84c953839</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>Aws::DataFlow::ObservedBlockingQueue&lt; TaskPtr&lt; T &gt; &gt;</type>
      <name>TaskObservedBlockingQueue</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a484f8feb1b794132849bf4b3b98c25cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>Aws::DataFlow::ObservedQueue&lt; TaskPtr&lt; T &gt; &gt;</type>
      <name>TaskObservedQueue</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>aa9cc5f621013a2f165d872cbfc780ed0</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; Aws::DataFlow::Task&lt; T &gt; &gt;</type>
      <name>TaskPtr</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a99002d2e8dc860c85764b05d00e21594</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>Aws::DataFlow::Sink&lt; TaskPtr&lt; T &gt; &gt;</type>
      <name>TaskSink</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a4c502088e380a2cf1fad56fa5336f698</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>token_test.cpp</name>
    <path>/tmp/ws/src/cloudwatch_common/file_management/test/file_management/</path>
    <filename>token__test_8cpp</filename>
    <includes id="file__manager__strategy_8h" name="file_manager_strategy.h" local="no" imported="no">file_management/file_upload/file_manager_strategy.h</includes>
    <class kind="class">TokenTest</class>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a6a56ed068f15186248ca49f4f282b359</anchor>
      <arglist>(token_test, fail_unknown_token)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a8a964295ce669303d65185a4d856807a</anchor>
      <arglist>(token_test, fail_token_twice)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a512ad68b2b7a405f5a3a2958b460be8e</anchor>
      <arglist>(token_test, resolve_then_fail_token)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a3e87bde4523bb5c0c67b4866a7535a57</anchor>
      <arglist>(token_test, fail_then_recover_token)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>ac18f5fd803501269b0d18adb797a9574</anchor>
      <arglist>(token_test, resolve_unknown_token)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a5ee15a989fde3c4505bb9df7969010a7</anchor>
      <arglist>(token_test, resolve_token)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a1fa9cf0045efcda578aab12e0bae593d</anchor>
      <arglist>(token_test, resolve_token_twice)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>aad85e9bf52cfe6aa8cdba1357ab5e65c</anchor>
      <arglist>(token_test, test_backup)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a2e6fa2a2e3d18c69fba22d577edf89bc</anchor>
      <arglist>(token_test, test_backup_failed_file)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a50512e06e3eae7c3fafd18e1cb956a4c</anchor>
      <arglist>(token_test, test_token_restore)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a2da65bbae003f00e1fa05d5bde56bb10</anchor>
      <arglist>(token_test, test_backup_two_files)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a0c40728a788003ffd28980fcb38d4c91</anchor>
      <arglist>(TokenTest, test_backup_to_disk)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a7a9356231d81f85fdcf3edbeec07be48</anchor>
      <arglist>(TokenTest, test_restore_from_disk)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TEST_F</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>a920bcf131868424464664d448c92d55e</anchor>
      <arglist>(TokenTest, test_restoring_from_disk_with_invalid_json)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const FileTokenInfo</type>
      <name>kTestToken1</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>ac41dc0eaa84553a40338c7052333a12a</anchor>
      <arglist>(&quot;fake_file&quot;, 0, false)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const FileTokenInfo</type>
      <name>kTestToken2</name>
      <anchorfile>token__test_8cpp.html</anchorfile>
      <anchor>af44c85f7c0d41bcf0231289cb92cfd1e</anchor>
      <arglist>(&quot;fake_file&quot;, 10, true)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::DataManagerStrategy</name>
    <filename>classAws_1_1FileManagement_1_1DataManagerStrategy.html</filename>
    <base>Service</base>
    <member kind="function">
      <type></type>
      <name>DataManagerStrategy</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>a0d42222dbb266cea8c40484a24b611bc</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>isDataAvailable</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>ab126564cae0599008a1a39b947f98ca2</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>isDeleteStaleData</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>a240dcad2942958489d287f22e28e9188</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual DataToken</type>
      <name>read</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>a558fefe0a945f9aef767bfb3f0e97509</anchor>
      <arglist>(std::string &amp;data)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>resolve</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>adec906da3e0d57cc7fe72fd1bd854d32</anchor>
      <arglist>(const DataToken &amp;token, bool is_success)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>write</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>ab66c04c14d7b63a1b635824afe93288f</anchor>
      <arglist>(const std::string &amp;data)=0</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~DataManagerStrategy</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataManagerStrategy.html</anchorfile>
      <anchor>a5e3e397ce16a3e286e5544c64d7e2430</anchor>
      <arglist>() override=default</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::DataReader</name>
    <filename>classAws_1_1FileManagement_1_1DataReader.html</filename>
    <templarg>T</templarg>
    <base>Service</base>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>deleteStaleData</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a1c25aaac841770e629f9f53124f11593</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>fileUploadCompleteStatus</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a68b1b7bf271bf76aa38cf6357aa89c0d</anchor>
      <arglist>(const Aws::DataFlow::UploadStatus &amp;upload_status, const FileObject&lt; T &gt; &amp;log_messages)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>isDataAvailableToRead</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a613438cf9227ed122bdae20a8b3a32f0</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual FileObject&lt; T &gt;</type>
      <name>readBatch</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a717e19228981c57414c713372fd39f12</anchor>
      <arglist>(size_t batch_size)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>setStatusMonitor</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>ab31af1bbad22e3f06ff2566b774a4e14</anchor>
      <arglist>(std::shared_ptr&lt; StatusMonitor &gt; status_monitor)=0</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>DataReader&lt; std::string &gt;</name>
    <filename>classAws_1_1FileManagement_1_1DataReader.html</filename>
    <base>Service</base>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>deleteStaleData</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a1c25aaac841770e629f9f53124f11593</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>fileUploadCompleteStatus</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a68b1b7bf271bf76aa38cf6357aa89c0d</anchor>
      <arglist>(const Aws::DataFlow::UploadStatus &amp;upload_status, const FileObject&lt; std::string &gt; &amp;log_messages)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual bool</type>
      <name>isDataAvailableToRead</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a613438cf9227ed122bdae20a8b3a32f0</anchor>
      <arglist>()=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual FileObject&lt; std::string &gt;</type>
      <name>readBatch</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>a717e19228981c57414c713372fd39f12</anchor>
      <arglist>(size_t batch_size)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>setStatusMonitor</name>
      <anchorfile>classAws_1_1FileManagement_1_1DataReader.html</anchorfile>
      <anchor>ab31af1bbad22e3f06ff2566b774a4e14</anchor>
      <arglist>(std::shared_ptr&lt; StatusMonitor &gt; status_monitor)=0</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileManager</name>
    <filename>classAws_1_1FileManagement_1_1FileManager.html</filename>
    <templarg></templarg>
    <base>Aws::FileManagement::DataReader</base>
    <member kind="function">
      <type>void</type>
      <name>deleteStaleData</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a72683028b89853547683ef85ff1bdf21</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileManager</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a29041792fb820a65f3faf627d8d2c477</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileManager</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>ad23e8d84e34f49c5c24d74d731885ae1</anchor>
      <arglist>(const FileManagerStrategyOptions &amp;options)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileManager</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>ad54d220ba84c7be39f9ce18ebd8092be</anchor>
      <arglist>(std::shared_ptr&lt; DataManagerStrategy &gt; file_manager_strategy)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>fileUploadCompleteStatus</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a2598351191830aa1145b0634e763f4dd</anchor>
      <arglist>(const Aws::DataFlow::UploadStatus &amp;upload_status, const FileObject&lt; T &gt; &amp;log_messages) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isDataAvailableToRead</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>af232e5011428d75bfa2f1c7db805cbde</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>DataToken</type>
      <name>read</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a3dc80c02ffbb58b1eaba554d41b0c11d</anchor>
      <arglist>(std::string &amp;data)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setStatusMonitor</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a64b024bfa923449b46a8412874a2c5cb</anchor>
      <arglist>(std::shared_ptr&lt; StatusMonitor &gt; status_monitor) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>shutdown</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a239eabb630aeba3c249a8cb11b90f90b</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>start</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>af191458119d97ed0df18acc5b3705119</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>write</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a27d0a98d01dd6c68c792657da1d6c1f9</anchor>
      <arglist>(const T &amp;data)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~FileManager</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>aaa8bd10eb69bfc638d77276e4df6afae</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::mutex</type>
      <name>active_delete_stale_data_mutex_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a0fd941a3d546391d9c3cd5f5e0647ba6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::shared_ptr&lt; DataManagerStrategy &gt;</type>
      <name>file_manager_strategy_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a991c45384c7693b8ec312b33638f496a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::shared_ptr&lt; StatusMonitor &gt;</type>
      <name>file_status_monitor_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>abfb498a0430ba5c63b092b1e00754c54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::vector&lt; FileManagement::DataToken &gt;</type>
      <name>stale_data_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a85555d98565263dbff85beff2ef38c59</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>size_t</type>
      <name>total_logs_uploaded_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManager.html</anchorfile>
      <anchor>a3dd8d601f35ce7e13b53dbca3e81897a</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileManagerStrategy</name>
    <filename>classAws_1_1FileManagement_1_1FileManagerStrategy.html</filename>
    <base>Aws::FileManagement::DataManagerStrategy</base>
    <member kind="function">
      <type></type>
      <name>FileManagerStrategy</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ae63e1da68a7794beec5fb16584927784</anchor>
      <arglist>(const FileManagerStrategyOptions &amp;options)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isDataAvailable</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ab0c1c20809e050c68a3a9bc9685eb735</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isDeleteStaleData</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a3df5fe2a4a43530e3d6a108157bdac97</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>DataToken</type>
      <name>read</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a35a7e4b4dbf2f37e6e9bde171bfef4bd</anchor>
      <arglist>(std::string &amp;data) override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>resolve</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a14e81b3ec9c87b6cd933f886a771b0a8</anchor>
      <arglist>(const DataToken &amp;token, bool is_success) override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>shutdown</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>aa21691887c1db60208decac013e1ac6e</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>start</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>aa168bb3a94e43ea9f727cd4b24c3b38b</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>write</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>aa8ac32d6441972cf1922c9255eff911f</anchor>
      <arglist>(const std::string &amp;data) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~FileManagerStrategy</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>aa8eff61448c32c50e510f34fcdfaae4a</anchor>
      <arglist>() override=default</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>std::string</type>
      <name>getActiveWriteFile</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>af663a80dd623e35e94deeda7720f6f41</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>std::string</type>
      <name>getFileToRead</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a62cdf42bc997a6bc839ab67d6923ae9d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>addFilePathToStorage</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a7a484ecae0df5dc14662afba61d22969</anchor>
      <arglist>(const std::experimental::filesystem::path &amp;file_path)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>checkIfStorageLimitHasBeenReached</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ae36ce340bd652131adc4e08a49ecd044</anchor>
      <arglist>(const uintmax_t &amp;new_data_size)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>checkIfWriteFileShouldRotate</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>aea3f6837316b76d6134e6bca29fecb69</anchor>
      <arglist>(const uintmax_t &amp;new_data_size)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>deleteFile</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ae61bf37acadb8d5fb1ef41b6174485f9</anchor>
      <arglist>(const std::string &amp;file_path)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>deleteOldestFile</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a48afb37d98b4c8512a24cec4906a4114</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>discoverStoredFiles</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a482e85cfa633c2a56765e323ac1159e7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>initializeStorage</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ad8b3e13fd46540a2e75c62d96aadc2af</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>initializeTokenStore</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a49ec36db33aa46f1d4a8d6c7ddfa896f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>rotateWriteFile</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>adfd05954cdf2c6df022d2fdd964f9c18</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>validateOptions</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ac96ac59a2440ac1a4660b6beeef36969</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>active_read_file_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ab50e9ad5fec68ae5ad97ff1112dfc876</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>active_read_file_mutex_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a893e28424349ad106ff41e081d5dd5cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; std::ifstream &gt;</type>
      <name>active_read_file_stream_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ac87e92cf375aaccc6fb57bd2d44469a1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>active_write_file_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>aa64d479f76d8acc656c1ee5b5b43fc14</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::mutex</type>
      <name>active_write_file_mutex_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a73e9985c45b068502c5b91485832c31c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; size_t &gt;</type>
      <name>active_write_file_size_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a6e2fb875347ea25a3f5d4094a69d9454</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>FileManagerStrategyOptions</type>
      <name>options_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a3bc975d4ea2ed16bdf46c0e3732c6141</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::list&lt; std::string &gt;</type>
      <name>stored_files_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a45fb94b9e39204c0a0bd4d90d18e72a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::atomic&lt; size_t &gt;</type>
      <name>stored_files_size_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>ab0887c578cda3bba24ad8172bf4738c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unique_ptr&lt; TokenStore &gt;</type>
      <name>token_store_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileManagerStrategy.html</anchorfile>
      <anchor>a0af1adf83bceff042674590387646b19</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>Aws::FileManagement::FileManagerStrategyOptions</name>
    <filename>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</filename>
    <member kind="function">
      <type></type>
      <name>FileManagerStrategyOptions</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a8e09c410d1708a844d7ee7eb1cbc6984</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileManagerStrategyOptions</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a167c90b6971d6bcea30012b9925116ea</anchor>
      <arglist>(std::string _storage_directory, std::string _file_prefix, std::string _file_extension, size_t _maximum_file_size, size_t _storage_limit, bool _delete_stale_data=false)</arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>delete_stale_data</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a1268db23bab6c0413078d59ca0bb4ac2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>file_extension</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a771892acba782cfbd06f9b40370587a3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>file_prefix</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>ab98adf04fc3f7f17335b9b255295cb19</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>maximum_file_size_in_kb</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a66ba317cc6fd60ccc05135044b596783</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>storage_directory</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a99bc65bf7fa55f9ca6ee5fd0fe4a67de</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>storage_limit_in_kb</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileManagerStrategyOptions.html</anchorfile>
      <anchor>a092a643be68d1b485a7f5355f4eb71d1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>FileManagerStrategyTest</name>
    <filename>classFileManagerStrategyTest.html</filename>
    <member kind="function">
      <type>void</type>
      <name>SetUp</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>a21f4ec70e210c66b7564e5742aa555d6</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>TearDown</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>a39ea563894e3f86cacee0e873bb00239</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>extension</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>a2da9e961f1b1bbcb7d1adc0cb2f3ee12</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>folder</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>acd21b796478f98a02aa21264eaa3facf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint</type>
      <name>max_file_size</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>af029cbfb5caa03e6737d20e04bf0051c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>FileManagerStrategyOptions</type>
      <name>options</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>a2e6f5943ce8b5b850fb5876b06f3b60d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>prefix</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>a0f3f9f5702fd868869d1bb893c6cae8f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>uint</type>
      <name>storage_limit</name>
      <anchorfile>classFileManagerStrategyTest.html</anchorfile>
      <anchor>ac5f8a0ba28a4498cc84773d782566d69</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileObject</name>
    <filename>classAws_1_1FileManagement_1_1FileObject.html</filename>
    <templarg>T</templarg>
    <member kind="variable">
      <type>T</type>
      <name>batch_data</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileObject.html</anchorfile>
      <anchor>aa813c64725f2e8fa9b06e2281086e49a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>batch_size</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileObject.html</anchorfile>
      <anchor>a3f3b6bab57aeeb5fbb9c0574eb6eb416</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::list&lt; DataToken &gt;</type>
      <name>data_tokens</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileObject.html</anchorfile>
      <anchor>a7b4e829dcad228682e5c169ddb885bf7</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>FileStreamerTest</name>
    <filename>classFileStreamerTest.html</filename>
    <member kind="function">
      <type>void</type>
      <name>SetUp</name>
      <anchorfile>classFileStreamerTest.html</anchorfile>
      <anchor>acbae8269d60a7ce92bac537de37ef7ad</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>TearDown</name>
      <anchorfile>classFileStreamerTest.html</anchorfile>
      <anchor>a0b03656ad2175495cf44f75e8f1fb245</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::shared_ptr&lt;::testing::StrictMock&lt; MockDataReader &gt; &gt;</type>
      <name>file_manager</name>
      <anchorfile>classFileStreamerTest.html</anchorfile>
      <anchor>a44da79f54e39acb09fc22dfe50dde4bc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::shared_ptr&lt; FileUploadStreamer&lt; std::string &gt; &gt;</type>
      <name>file_upload_streamer</name>
      <anchorfile>classFileStreamerTest.html</anchorfile>
      <anchor>a15ffcce7e6b37bebed7f67815aafd7f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::shared_ptr&lt; MockSink &gt;</type>
      <name>mock_sink</name>
      <anchorfile>classFileStreamerTest.html</anchorfile>
      <anchor>ac26a4f0a87a0f6647297feb7f74bb032</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileTokenInfo</name>
    <filename>classAws_1_1FileManagement_1_1FileTokenInfo.html</filename>
    <member kind="function">
      <type>void</type>
      <name>deserialize</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a43f0051b40c6bf892cafca71dc45df23</anchor>
      <arglist>(const std::string &amp;token_info_json)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileTokenInfo</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>adb11f2ed27d5f8b4c8d7317e0bace6fa</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileTokenInfo</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a830ad964fe6efd4e5b8cb2dedad7c537</anchor>
      <arglist>(const std::string &amp;file_path, const long position, const bool eof)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileTokenInfo</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a210bef7c97a78d70566fb38f68076116</anchor>
      <arglist>(std::string &amp;&amp;file_path, const long position, const bool eof)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileTokenInfo</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a1a0dba12f90aff95dda93dbd67ec9e3f</anchor>
      <arglist>(const FileTokenInfo &amp;info)=default</arglist>
    </member>
    <member kind="function">
      <type>FileTokenInfo &amp;</type>
      <name>operator=</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>ace6e568272b3c969b4297e737d3bae2f</anchor>
      <arglist>(const FileTokenInfo &amp;other)=default</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>serialize</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a2f3cc11039a5615ec39f60b2121abaf9</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~FileTokenInfo</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a5fd84b3dbc24210bb9e63e4564a21e6f</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>eof_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>a417b6852e0034c9b04ad5e395280c55f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>std::string</type>
      <name>file_path_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>aa87aeeaea6f71201b04a552978342f65</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>int64_t</type>
      <name>position_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileTokenInfo.html</anchorfile>
      <anchor>ad8f54d06e644969c0d83783a5258e8aa</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileUploadStreamer</name>
    <filename>classAws_1_1FileManagement_1_1FileUploadStreamer.html</filename>
    <templarg></templarg>
    <base>Aws::DataFlow::OutputStage</base>
    <base>RunnableService</base>
    <member kind="function">
      <type>void</type>
      <name>addStatusMonitor</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>ae5d40e4fcf8ddbfa098ed36769612bf2</anchor>
      <arglist>(std::shared_ptr&lt; StatusMonitor &gt; &amp;status_monitor)</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileUploadStreamer</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a0d9e74bd119e8327690a1331c42d16d6</anchor>
      <arglist>(std::shared_ptr&lt; DataReader&lt; T &gt;&gt; data_reader, FileUploadStreamerOptions options)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>forceWork</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a9afee06173e3e16d7fe2a3acc6092a6b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>initialize</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>afd38f65660e7f292bdb961b63dac4700</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onComplete</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a6c9d247279ea9384335448674ac62742</anchor>
      <arglist>(const Aws::DataFlow::UploadStatus &amp;upload_status, const FileObject&lt; T &gt; &amp;message)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onPublisherStateChange</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>ac20317dcafc5831d1ac9493c4d0e9cf1</anchor>
      <arglist>(const Aws::DataFlow::Status &amp;status)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setStatusMonitorTimeout</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a43fa5925163812579db5ac17fba88ce3</anchor>
      <arglist>(std::chrono::milliseconds new_timeout)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>shutdown</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a042c1058d782d2ebeab744277913a1bb</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>start</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a32dbe4ee3ed3866a4facf6f977db9739</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~FileUploadStreamer</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>ad23f543ed0711ea348044158106c01a2</anchor>
      <arglist>() override=default</arglist>
    </member>
    <member kind="function" protection="protected">
      <type>void</type>
      <name>work</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a8ef774740bc2755edf353f8247f4ada8</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>batch_size_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>af305c9618cae8e1e96851932baccb527</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; DataReader&lt; T &gt; &gt;</type>
      <name>data_reader_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a24e79cd1d0a67c69cebe052cf2abd6d6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; StatusMonitor &gt;</type>
      <name>network_monitor_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a108fa68a7ec13d5aee9fa5c43a580d9a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>MultiStatusConditionMonitor</type>
      <name>status_condition_monitor_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a329e92aab8fc1f6d004604912ec277e5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::chrono::milliseconds</type>
      <name>status_monitor_timeout_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a842d02a742d21297898b91a9c6bcf0ca</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::shared_ptr&lt; FileUploadTask&lt; T &gt; &gt;</type>
      <name>stored_task_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a192935f470ebd8c851ce642c0b9ea210</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>size_t</type>
      <name>total_logs_uploaded</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadStreamer.html</anchorfile>
      <anchor>a31ce76d37f7dc084472480703204a8a1</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>Aws::FileManagement::FileUploadStreamerOptions</name>
    <filename>structAws_1_1FileManagement_1_1FileUploadStreamerOptions.html</filename>
    <member kind="variable">
      <type>size_t</type>
      <name>batch_size</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileUploadStreamerOptions.html</anchorfile>
      <anchor>a73e1772ee11d049e3745123074b031ab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>size_t</type>
      <name>queue_size</name>
      <anchorfile>structAws_1_1FileManagement_1_1FileUploadStreamerOptions.html</anchorfile>
      <anchor>ac22b43345e4526bc12eae37d6e60e6f6</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileUploadTask</name>
    <filename>classAws_1_1FileManagement_1_1FileUploadTask.html</filename>
    <templarg></templarg>
    <base>Task&lt; T &gt;</base>
    <member kind="typedef">
      <type>Aws::DataFlow::UploadStatusFunction&lt; Aws::DataFlow::UploadStatus, FileObject&lt; T &gt; &gt;</type>
      <name>FileUploadStatusFunc</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>a4ca24ede05ff9ea17126ba03cf8fda80</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>FileUploadTask</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>ab1a376029ac7339bc8275d276c98e61f</anchor>
      <arglist>(FileObject&lt; T &gt; &amp;&amp;batch_data, FileUploadStatusFunc upload_status_function)</arglist>
    </member>
    <member kind="function">
      <type>T &amp;</type>
      <name>getBatchData</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>aecb7f141b706451f6005d98cfbadc808</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onComplete</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>aa36bff9c24bdcf2e3f6956ea795005ff</anchor>
      <arglist>(const Aws::DataFlow::UploadStatus &amp;status) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~FileUploadTask</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>a4adaa102501eed8114845727bb392093</anchor>
      <arglist>() override=default</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>FileObject&lt; T &gt;</type>
      <name>batch_data_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>af1b6e074cfa2b023e1c11a8a4851713b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>FileUploadStatusFunc</type>
      <name>upload_status_function_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTask.html</anchorfile>
      <anchor>a2e4b7f44bc2c7da1f1f4cd613d8c8c92</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::FileUploadTaskAsync</name>
    <filename>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</filename>
    <templarg></templarg>
    <base>Task&lt; T &gt;</base>
    <member kind="function">
      <type></type>
      <name>FileUploadTaskAsync</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>ac339c8fe217ab5dc6590bbf0eaf3eac5</anchor>
      <arglist>(FileObject&lt; T &gt; &amp;&amp;batch_data)</arglist>
    </member>
    <member kind="function">
      <type>T &amp;</type>
      <name>getBatchData</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>a33d0d276954349106560a689c711877a</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>std::future&lt; std::pair&lt; FileObject&lt; T &gt;, Aws::DataFlow::UploadStatus &gt; &gt;</type>
      <name>getResult</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>ae7141440381c6e84e47b0af035b251b0</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>onComplete</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>a6ad8d27814523cd1491a3206fadbff72</anchor>
      <arglist>(const Aws::DataFlow::UploadStatus &amp;status) override</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~FileUploadTaskAsync</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>acb84287847d5accd9b8cbcf2ca18a6cf</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>FileObject&lt; T &gt;</type>
      <name>batch_data_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>ab89fefc41aa2c7731f6bfdf59fd06094</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::promise&lt; std::pair&lt; FileObject&lt; T &gt;, Aws::DataFlow::UploadStatus &gt; &gt;</type>
      <name>file_upload_promise_</name>
      <anchorfile>classAws_1_1FileManagement_1_1FileUploadTaskAsync.html</anchorfile>
      <anchor>a48dd586e092e4d1bfdd355f4e1c79830</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MockDataReader</name>
    <filename>classMockDataReader.html</filename>
    <base>DataReader&lt; std::string &gt;</base>
    <member kind="function">
      <type>void</type>
      <name>deleteStaleData</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>abc85256c49095073fe5b1bbce54c5458</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD0</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>a55c05c4e05aa5e8916802c1a61fa0879</anchor>
      <arglist>(start, bool())</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD0</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>a3e4f8fc868c8bc1a692c5d78f96012bb</anchor>
      <arglist>(shutdown, bool())</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD0</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>ac151bc105878a090afb94c064336f9bc</anchor>
      <arglist>(isDataAvailableToRead, bool())</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD1</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>ab27d90e7aeee50bad364ba3add90aa7a</anchor>
      <arglist>(readBatch, FileObject&lt; std::string &gt;(size_t batch_size))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD1</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>ac2e588c9b6d3c1805c9463e3e0ced414</anchor>
      <arglist>(addStatusMonitor, void(std::shared_ptr&lt; StatusMonitor &gt; monitor))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD2</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>a8ad9ef3901f6500e0a02fbe0e1068acc</anchor>
      <arglist>(fileUploadCompleteStatus, void(const UploadStatus &amp;upload_status, const FileObject&lt; std::string &gt; &amp;log_messages))</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setStatusMonitor</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>ad041f27716579403a9d09a32ace7c0a1</anchor>
      <arglist>(std::shared_ptr&lt; StatusMonitor &gt; status_monitor) override</arglist>
    </member>
    <member kind="variable">
      <type>std::shared_ptr&lt; StatusMonitor &gt;</type>
      <name>status_monitor_</name>
      <anchorfile>classMockDataReader.html</anchorfile>
      <anchor>adbe7223145b106be44ef25815b20a14f</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MockFileManagerStrategy</name>
    <filename>classMockFileManagerStrategy.html</filename>
    <base>Aws::FileManagement::FileManagerStrategy</base>
    <member kind="function">
      <type>std::string</type>
      <name>getActiveWriteFile</name>
      <anchorfile>classMockFileManagerStrategy.html</anchorfile>
      <anchor>a093a309341bd8d291e46e801dfd69851</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>std::string</type>
      <name>getFileToRead</name>
      <anchorfile>classMockFileManagerStrategy.html</anchorfile>
      <anchor>a37592ac65220d86eb9053ab7bf6c7ade</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MockFileManagerStrategy</name>
      <anchorfile>classMockFileManagerStrategy.html</anchorfile>
      <anchor>af91ad3111a92b994e39d551837db72b7</anchor>
      <arglist>(const FileManagerStrategyOptions &amp;options)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>MockSink</name>
    <filename>classMockSink.html</filename>
    <base>Sink&lt; SharedFileUploadTask &gt;</base>
    <member kind="function">
      <type>bool</type>
      <name>enqueue</name>
      <anchorfile>classMockSink.html</anchorfile>
      <anchor>a0d02f811a172db80ef36cd549d65c4bb</anchor>
      <arglist>(SharedFileUploadTask &amp;&amp;value) override</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD0</name>
      <anchorfile>classMockSink.html</anchorfile>
      <anchor>aeda6fdf03bb92769230e3558adf33244</anchor>
      <arglist>(clear, void(void))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD1</name>
      <anchorfile>classMockSink.html</anchorfile>
      <anchor>afba95ed52f8291f43d53de967652c58d</anchor>
      <arglist>(enqueue_rvr, bool(SharedFileUploadTask data))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD1</name>
      <anchorfile>classMockSink.html</anchorfile>
      <anchor>a45c51f29876811c2c66ac152bb63ca61</anchor>
      <arglist>(enqueue, bool(SharedFileUploadTask &amp;data))</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>MOCK_METHOD2</name>
      <anchorfile>classMockSink.html</anchorfile>
      <anchor>a53e26e4d1e36c8a9985b6a9beb3588c2</anchor>
      <arglist>(tryEnqueue, bool(SharedFileUploadTask &amp;data, const std::chrono::microseconds &amp;duration))</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>tryEnqueue</name>
      <anchorfile>classMockSink.html</anchorfile>
      <anchor>a6c918fcab644f76898633c7ac2f05833</anchor>
      <arglist>(SharedFileUploadTask &amp;&amp;value, const std::chrono::microseconds &amp;duration) override</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>SanitizePathTest</name>
    <filename>classSanitizePathTest.html</filename>
    <member kind="function">
      <type>void</type>
      <name>SetUp</name>
      <anchorfile>classSanitizePathTest.html</anchorfile>
      <anchor>a9ec071e84cd7b9649329db768bd295f2</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>TearDown</name>
      <anchorfile>classSanitizePathTest.html</anchorfile>
      <anchor>a40fa2eaa1705078cc77374e684bec7c5</anchor>
      <arglist>() override</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>Aws::FileManagement::TokenStore</name>
    <filename>classAws_1_1FileManagement_1_1TokenStore.html</filename>
    <member kind="function">
      <type>std::vector&lt; FileTokenInfo &gt;</type>
      <name>backup</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a0295fbb2d9359e42a68f6a666951385b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>backupToDisk</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a907d48f7b339560eb3c771319075dfdd</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>DataToken</type>
      <name>createToken</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a64a692645647730fafa434a2885fa383</anchor>
      <arglist>(const std::string &amp;file_name, const long streampos, bool is_eof)</arglist>
    </member>
    <member kind="function">
      <type>FileTokenInfo</type>
      <name>fail</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a428b7283f6fe7a87a22ce09e6a85a14a</anchor>
      <arglist>(const DataToken &amp;token)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>isTokenAvailable</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a862aeb603906633e8f09206a3d3f91ac</anchor>
      <arglist>(const std::string &amp;file_name) const</arglist>
    </member>
    <member kind="function">
      <type>FileTokenInfo</type>
      <name>popAvailableToken</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>aaaebd9f48994723d9e764558ecea1374</anchor>
      <arglist>(const std::string &amp;file_name)</arglist>
    </member>
    <member kind="function">
      <type>FileTokenInfo</type>
      <name>resolve</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>aa10d95fb23318e6661401a70ffd0338e</anchor>
      <arglist>(const DataToken &amp;token)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>restore</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a6c8d8a1ea2adbc4416cdca3b13c55d92</anchor>
      <arglist>(const std::vector&lt; FileTokenInfo &gt; &amp;file_tokens)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>restoreFromDisk</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a83ef7cf928b2d031a4fc50e1ee875e8e</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TokenStore</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>af861318091193e8dfc79f52a6657e7ca</anchor>
      <arglist>()=default</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>TokenStore</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a6aa0aabcd50dfd12e5e2d05edf0ccb81</anchor>
      <arglist>(const TokenStoreOptions &amp;options)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>initializeBackupDirectory</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a85945ca52546b06beedb31a2a4c70b7b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>validateOptions</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a5b2212356e8f280aa139ad43a0d0a0c9</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unordered_map&lt; std::string, std::list&lt; DataToken &gt; &gt;</type>
      <name>file_tokens_</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>af1f91e90b0ea56ed7bc04227648ab879</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>TokenStoreOptions</type>
      <name>options_</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a775e217542ee9f1916a03d2b5fa0e4d2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::random_device</type>
      <name>rand_device</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>a0d36d3e5ccc3a8393b57dfeb39bfaa3e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unordered_map&lt; std::string, FileTokenInfo &gt;</type>
      <name>staged_tokens_</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>ac489b61ec354ca13723d4db8654ce710</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::unordered_map&lt; DataToken, FileTokenInfo &gt;</type>
      <name>token_store_</name>
      <anchorfile>classAws_1_1FileManagement_1_1TokenStore.html</anchorfile>
      <anchor>aa73fbe0fa309ddbbdd9384fea949e727</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>Aws::FileManagement::TokenStoreOptions</name>
    <filename>structAws_1_1FileManagement_1_1TokenStoreOptions.html</filename>
    <member kind="variable">
      <type>std::string</type>
      <name>backup_directory</name>
      <anchorfile>structAws_1_1FileManagement_1_1TokenStoreOptions.html</anchorfile>
      <anchor>a2b2381b8b0f17200ec95477a6dc53022</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TokenTest</name>
    <filename>classTokenTest.html</filename>
    <member kind="function">
      <type>void</type>
      <name>SetUp</name>
      <anchorfile>classTokenTest.html</anchorfile>
      <anchor>ab042991b812bf42cc87c7460d90460f1</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>TearDown</name>
      <anchorfile>classTokenTest.html</anchorfile>
      <anchor>a12301fa997c7b62535d2dcf771d4489e</anchor>
      <arglist>() override</arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>backup_folder</name>
      <anchorfile>classTokenTest.html</anchorfile>
      <anchor>a3e45460ec53fb49bb35a0aeb535d72ff</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>std::string</type>
      <name>kBackupFilename</name>
      <anchorfile>classTokenTest.html</anchorfile>
      <anchor>a77ccb7ba1278710c9e32d6b152eaf80b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="protected">
      <type>TokenStoreOptions</type>
      <name>options</name>
      <anchorfile>classTokenTest.html</anchorfile>
      <anchor>a099b1c86d6ac0267a64d984ee6a3ca27</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>Aws</name>
    <filename>namespaceAws.html</filename>
    <namespace>Aws::FileManagement</namespace>
  </compound>
  <compound kind="namespace">
    <name>Aws::FileManagement</name>
    <filename>namespaceAws_1_1FileManagement.html</filename>
    <class kind="class">Aws::FileManagement::DataManagerStrategy</class>
    <class kind="class">Aws::FileManagement::DataReader</class>
    <class kind="class">Aws::FileManagement::FileManager</class>
    <class kind="class">Aws::FileManagement::FileManagerStrategy</class>
    <class kind="struct">Aws::FileManagement::FileManagerStrategyOptions</class>
    <class kind="class">Aws::FileManagement::FileObject</class>
    <class kind="class">Aws::FileManagement::FileTokenInfo</class>
    <class kind="class">Aws::FileManagement::FileUploadStreamer</class>
    <class kind="struct">Aws::FileManagement::FileUploadStreamerOptions</class>
    <class kind="class">Aws::FileManagement::FileUploadTask</class>
    <class kind="class">Aws::FileManagement::FileUploadTaskAsync</class>
    <class kind="class">Aws::FileManagement::TokenStore</class>
    <class kind="struct">Aws::FileManagement::TokenStoreOptions</class>
    <member kind="typedef">
      <type>uint64_t</type>
      <name>DataToken</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a315a51d5a423c1ccce7f5e3dd11ae6e7</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; FileUploadTask&lt; T &gt; &gt;</type>
      <name>FileUploadTaskPtr</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a1a18aed89445c481dc281ed84c953839</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>Aws::DataFlow::ObservedBlockingQueue&lt; TaskPtr&lt; T &gt; &gt;</type>
      <name>TaskObservedBlockingQueue</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a484f8feb1b794132849bf4b3b98c25cb</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>Aws::DataFlow::ObservedQueue&lt; TaskPtr&lt; T &gt; &gt;</type>
      <name>TaskObservedQueue</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>aa9cc5f621013a2f165d872cbfc780ed0</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>std::shared_ptr&lt; Aws::DataFlow::Task&lt; T &gt; &gt;</type>
      <name>TaskPtr</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a99002d2e8dc860c85764b05d00e21594</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef">
      <type>Aws::DataFlow::Sink&lt; TaskPtr&lt; T &gt; &gt;</type>
      <name>TaskSink</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a4c502088e380a2cf1fad56fa5336f698</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumeration">
      <type></type>
      <name>TokenStatus</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a64047f0cdcaed6455294d9990bd1a615</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>ACTIVE</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a64047f0cdcaed6455294d9990bd1a615a77ea1fea0d077b36e21646ee115570e0</anchor>
      <arglist></arglist>
    </member>
    <member kind="enumvalue">
      <name>INACTIVE</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a64047f0cdcaed6455294d9990bd1a615a57814928d319f94a89f1b6616f44541c</anchor>
      <arglist></arglist>
    </member>
    <member kind="function">
      <type>std::shared_ptr&lt; FileUploadStreamer&lt; T &gt; &gt;</type>
      <name>createFileUploadStreamer</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a82ac3428aad08f3b0ca597366d2b3072</anchor>
      <arglist>(std::shared_ptr&lt; O &gt; file_manager, FileUploadStreamerOptions file_manager_options)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static const std::string</type>
      <name>kTokenStoreFile</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a377d1d3062741becbc6aa370ffb854f8</anchor>
      <arglist>(&quot;token_store.info&quot;)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator!=</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a1bb653512f7e1c26ba76901f8e0e4245</anchor>
      <arglist>(const FileTokenInfo &amp;lhs, const FileTokenInfo &amp;rhs)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>operator==</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a25421dbb345cdb807f320ca23186bab2</anchor>
      <arglist>(const FileTokenInfo &amp;lhs, const FileTokenInfo &amp;rhs)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>printCache</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a379a5c68e255603cf3fa6a00530002ad</anchor>
      <arglist>(std::unordered_map&lt; DataToken, FileTokenInfo &gt; token_store, std::unordered_map&lt; std::string, std::list&lt; DataToken &gt;&gt; file_tokens, std::unordered_map&lt; std::string, FileTokenInfo &gt; staged_tokens_)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>sanitizePath</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a8e0c3f9131f638930ac4e724395378dc</anchor>
      <arglist>(std::string &amp;path)</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const FileManagerStrategyOptions</type>
      <name>kDefaultFileManagerStrategyOptions</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>aacb2609a9055a4e5411cbb95be8366cc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr const char *</type>
      <name>kEofKey</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a05d2749decdaf93c546eb216891a63c9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr const char *</type>
      <name>kFilePathKey</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a2fa1e2c9f19c265ea50545ebd07169e2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr const char *</type>
      <name>kPositionKey</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>a9de54ef55dafff3705511e2b20f1722d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static constexpr std::chrono::milliseconds</type>
      <name>kTimeout</name>
      <anchorfile>namespaceAws_1_1FileManagement.html</anchorfile>
      <anchor>adb85e12cc36e70ba0432ff94f0c7c8d3</anchor>
      <arglist></arglist>
    </member>
  </compound>
</tagfile>
