59 std::string ioType = rwOperation.at(
"IO");
61 throw std::invalid_argument(
"Requested output type <" + ioType +
"> is not supported.");
63 return outputFactories.at(ioType)->getWriter(rwOperation, symbolTable, recordTable);
68 Own<ReadStream>
getReader(
const std::map<std::string, std::string>& rwOperation, SymbolTable& symbolTable,
69 RecordTable& recordTable)
const {
70 std::string ioType = rwOperation.at(
"IO");
72 throw std::invalid_argument(
"Requested input type <" + ioType +
"> is not supported.");
74 return inputFactories.at(ioType)->getReader(rwOperation, symbolTable, recordTable);
94 std::map<std::string, std::shared_ptr<WriteStreamFactory>>
outputFactories;
95 std::map<std::string, std::shared_ptr<ReadStreamFactory>>
inputFactories;