update name assignment part
Change-Id: I9655448b2d2ed927e36e55ac49357afa0470e507
diff --git a/src/configuration.cpp b/src/configuration.cpp
index 2db9c45..60097a6 100644
--- a/src/configuration.cpp
+++ b/src/configuration.cpp
@@ -22,8 +22,7 @@
#include "identity-challenge/challenge-module.hpp"
#include <ndn-cxx/util/io.hpp>
#include <boost/filesystem.hpp>
-#include <name-assignments/assignment-funcs.hpp>
-#include <name-assignments/assignment-or.hpp>
+#include "name-assignments/assignment-funcs.hpp"
namespace ndn {
namespace ndncert {
@@ -153,25 +152,13 @@
m_nameAssignmentFunc = nullptr;
auto nameAssignmentItems = configJson.get_child_optional(CONFIG_NAME_ASSIGNMENT);
if (nameAssignmentItems) {
- std::list<NameAssignmentFunc> funcs;
for (const auto item : *nameAssignmentItems) {
- auto factory = NameAssignmentFuncFactory::createNameAssignmentFuncFactory(item.first);
- if (!factory) {
- BOOST_THROW_EXCEPTION(std::runtime_error("Invalid assignment factory type"));
- }
- try {
- funcs.push_back(factory->getFunction(item.second.data()));
- } catch (const std::exception& e) {
- BOOST_THROW_EXCEPTION(std::runtime_error("Error on creating function"));
- }
- }
- if (funcs.size() < 1) {
- BOOST_THROW_EXCEPTION(std::runtime_error("Empty assignment body supplied"));
- } else if (funcs.size() == 1) {
- m_nameAssignmentFunc = *funcs.begin();
- } else {
- AssignmentOr orFunction;
- m_nameAssignmentFunc = orFunction.getFunction(funcs);
+ try {
+ m_heuristic.push_back(NameAssignmentFuncFactory::createNameAssignmentFuncFactory(item.first));
+ }
+ catch (const std::exception& e) {
+ BOOST_THROW_EXCEPTION(std::runtime_error("Error on creating name assignment function"));
+ }
}
}
}