--- a/src/StreamRelationalReader.h Sat Sep 08 19:43:20 2018 +0200
+++ b/src/StreamRelationalReader.h Sat Sep 08 23:27:49 2018 +0200
@@ -22,6 +22,9 @@
using namespace relpipe::protocol;
+using StringHandler = relpipe::reader::handlers::RelationalReaderStringHadler;
+using ValuesHandler = relpipe::reader::handlers::RelationalReaderValueHadler;
+
class StreamRelationalReader : public RelationalReader {
private:
std::istream &input;
@@ -30,8 +33,8 @@
types::StringDataTypeReader stringReader;
std::vector<DataTypeReaderBase*> readers = {&booleanReader, &integerReader, &stringReader};
- std::vector<handlers::RelationalReaderStringHadler*> stringHandlers;
- std::vector<handlers::RelationalReaderValueHadler*> valueHandlers;
+ std::vector<StringHandler*> stringHandlers;
+ std::vector<ValuesHandler*> valuesHandlers;
/**
* count of columns in the current table
@@ -68,8 +71,8 @@
}
void endOfPipe() {
- for (int i = 0; i < stringHandlers.size(); i++) stringHandlers[i]->endOfPipe();
- for (int i = 0; i < valueHandlers.size(); i++) valueHandlers[i]->endOfPipe();
+ for (StringHandler* handler : stringHandlers) handler->endOfPipe();
+ for (ValuesHandler* handler : valuesHandlers) handler->endOfPipe();
}
public:
@@ -83,12 +86,12 @@
throw RelpipeReaderException(L"Unsupported data type: " + static_cast<integer_t> (typeId));
}
- void addHandler(handlers::RelationalReaderStringHadler* handler) override {
+ void addHandler(StringHandler* handler) override {
stringHandlers.push_back(handler);
}
- void addHandler(handlers::RelationalReaderValueHadler* handler) override {
- valueHandlers.push_back(handler);
+ void addHandler(ValuesHandler* handler) override {
+ valuesHandlers.push_back(handler);
}
void process() override {
@@ -158,8 +161,8 @@
columns[i] = {columnNames[i], columnTypes[i]};
}
- for (int i = 0; i < stringHandlers.size(); i++) stringHandlers[i]->startRelation(tableName, columns);
- for (int i = 0; i < valueHandlers.size(); i++) valueHandlers[i]->startRelation(tableName, columns);
+ for (StringHandler* handler : stringHandlers) handler->startRelation(tableName, columns);
+ for (ValuesHandler* handler : valuesHandlers) handler->startRelation(tableName, columns);
} else if (dataPart == DATA_PART_ROW) {
for (int i = 0; i < columnCount; i++) {
@@ -167,12 +170,12 @@
if (stringHandlers.empty()) {
read(input, [&](const void * rawValue, const std::type_info & typeInfo) {
- for (int i = 0; i < valueHandlers.size(); i++) valueHandlers[i]->attribute(rawValue, typeInfo);
+ for (ValuesHandler* handler : valuesHandlers) handler->attribute(rawValue, typeInfo);
}, typeId);
} else {
read(input, [&](const string_t& stringValue, const void * rawValue, const std::type_info & typeInfo) {
- for (int i = 0; i < stringHandlers.size(); i++) stringHandlers[i]->attribute(stringValue);
- for (int i = 0; i < valueHandlers.size(); i++) valueHandlers[i]->attribute(rawValue, typeInfo);
+ for (StringHandler* handler : stringHandlers) handler->attribute(stringValue);
+ for (ValuesHandler* handler : valuesHandlers) handler->attribute(rawValue, typeInfo);
}, typeId);
}
}