Repository: nifi-minifi-cpp Updated Branches: refs/heads/master 4c8cb0e0c -> b26b06479
MINIFICPP-481: Update agent to exit gracefully with an invalid *repo dir This closes #319 Signed-off-by: Aldrin Piri <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/repo Commit: http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/commit/b26b0647 Tree: http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/tree/b26b0647 Diff: http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/diff/b26b0647 Branch: refs/heads/master Commit: b26b064795f8104f836a86d71f7d6e53f4eae56d Parents: 4c8cb0e Author: Marc Parisi <[email protected]> Authored: Thu May 3 17:01:18 2018 -0400 Committer: Aldrin Piri <[email protected]> Committed: Fri May 4 09:00:57 2018 -0400 ---------------------------------------------------------------------- main/MiNiFiMain.cpp | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/nifi-minifi-cpp/blob/b26b0647/main/MiNiFiMain.cpp ---------------------------------------------------------------------- diff --git a/main/MiNiFiMain.cpp b/main/MiNiFiMain.cpp index 6a669fe..868b65f 100644 --- a/main/MiNiFiMain.cpp +++ b/main/MiNiFiMain.cpp @@ -151,23 +151,33 @@ int main(int argc, char **argv) { configure->get(minifi::Configure::nifi_provenance_repository_class_name, prov_repo_class); // Create repos for flow record and provenance std::shared_ptr<core::Repository> prov_repo = core::createRepository(prov_repo_class, true, "provenance"); - prov_repo->initialize(configure); + + if (!prov_repo->initialize(configure)) { + std::cerr << "Provenance repository failed to initialize, exiting.." << std::endl; + exit(1); + } configure->get(minifi::Configure::nifi_flow_repository_class_name, flow_repo_class); std::shared_ptr<core::Repository> flow_repo = core::createRepository(flow_repo_class, true, "flowfile"); - flow_repo->initialize(configure); + if (!flow_repo->initialize(configure)) { + std::cerr << "Flow file repository failed to initialize, exiting.." << std::endl; + exit(1); + } configure->get(minifi::Configure::nifi_content_repository_class_name, content_repo_class); std::shared_ptr<core::ContentRepository> content_repo = core::createContentRepository(content_repo_class, true, "content"); - content_repo->initialize(configure); + if (!content_repo->initialize(configure)) { + std::cerr << "Content repository failed to initialize, exiting.." << std::endl; + exit(1); + } std::string content_repo_path; - if (configure->get(minifi::Configure::nifi_dbcontent_repository_directory_default, content_repo_path)){ - std::cout << "setting default dir to " << content_repo_path<< std::endl; + if (configure->get(minifi::Configure::nifi_dbcontent_repository_directory_default, content_repo_path)) { + std::cout << "setting default dir to " << content_repo_path << std::endl; minifi::setDefaultDirectory(content_repo_path); }
