--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/include/relpipe/reader/handlers/RelationalReaderBaseHandler.h Sat Aug 25 19:10:24 2018 +0200
@@ -0,0 +1,21 @@
+#pragma once
+
+#include <vector>
+
+#include "../TypeId.h"
+
+namespace relpipe {
+namespace reader {
+namespace handlers {
+
+class RelationalReaderBaseHadler {
+public:
+ virtual ~RelationalReaderBaseHadler() = default;
+
+ virtual void startRelation(string_t name, std::vector<std::pair<string_t, TypeId>> attributes) = 0;
+
+};
+
+}
+}
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/include/relpipe/reader/handlers/RelationalReaderStringHandler.h Sat Aug 25 19:10:24 2018 +0200
@@ -0,0 +1,21 @@
+#pragma once
+
+#include <vector>
+
+#include "../TypeId.h"
+#include "RelationalReaderBaseHandler.h"
+
+namespace relpipe {
+namespace reader {
+namespace handlers {
+
+class RelationalReaderStringHadler : public RelationalReaderBaseHadler {
+public:
+
+ virtual void attribute(const string_t& value) = 0;
+
+};
+
+}
+}
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/include/relpipe/reader/handlers/RelationalReaderValueHandler.h Sat Aug 25 19:10:24 2018 +0200
@@ -0,0 +1,21 @@
+#pragma once
+
+#include <vector>
+
+#include "../TypeId.h"
+#include "RelationalReaderBaseHandler.h"
+
+namespace relpipe {
+namespace reader {
+namespace handlers {
+
+class RelationalReaderValueHadler : public RelationalReaderBaseHadler {
+public:
+
+ virtual void attribute(const void* value, const std::type_info& type) = 0;
+
+};
+
+}
+}
+}
\ No newline at end of file
--- a/nbproject/configurations.xml Sat Aug 25 18:25:02 2018 +0200
+++ b/nbproject/configurations.xml Sat Aug 25 19:10:24 2018 +0200
@@ -11,6 +11,9 @@
<itemPath>include/relpipe/reader/Factory.h</itemPath>
<itemPath>src/types/IntegerDataTypeReader.h</itemPath>
<itemPath>include/relpipe/reader/RelationalReader.h</itemPath>
+ <itemPath>include/relpipe/reader/handlers/RelationalReaderBaseHandler.h</itemPath>
+ <itemPath>include/relpipe/reader/handlers/RelationalReaderStringHandler.h</itemPath>
+ <itemPath>include/relpipe/reader/handlers/RelationalReaderValueHandler.h</itemPath>
<itemPath>include/relpipe/reader/RelpipeReaderException.h</itemPath>
<itemPath>src/StreamRelationalReader.h</itemPath>
<itemPath>src/types/StringDataTypeReader.h</itemPath>
@@ -70,6 +73,21 @@
</item>
<item path="include/relpipe/reader/TypeId.h" ex="false" tool="3" flavor2="0">
</item>
+ <item path="include/relpipe/reader/handlers/RelationalReaderBaseHandler.h"
+ ex="false"
+ tool="3"
+ flavor2="0">
+ </item>
+ <item path="include/relpipe/reader/handlers/RelationalReaderStringHandler.h"
+ ex="false"
+ tool="3"
+ flavor2="0">
+ </item>
+ <item path="include/relpipe/reader/handlers/RelationalReaderValueHandler.h"
+ ex="false"
+ tool="3"
+ flavor2="0">
+ </item>
<item path="include/relpipe/reader/typedefs.h" ex="false" tool="3" flavor2="0">
</item>
<item path="src/DataTypeReader.h" ex="false" tool="3" flavor2="0">
@@ -128,6 +146,21 @@
</item>
<item path="include/relpipe/reader/TypeId.h" ex="false" tool="3" flavor2="0">
</item>
+ <item path="include/relpipe/reader/handlers/RelationalReaderBaseHandler.h"
+ ex="false"
+ tool="3"
+ flavor2="0">
+ </item>
+ <item path="include/relpipe/reader/handlers/RelationalReaderStringHandler.h"
+ ex="false"
+ tool="3"
+ flavor2="0">
+ </item>
+ <item path="include/relpipe/reader/handlers/RelationalReaderValueHandler.h"
+ ex="false"
+ tool="3"
+ flavor2="0">
+ </item>
<item path="include/relpipe/reader/typedefs.h" ex="false" tool="3" flavor2="0">
</item>
<item path="src/DataTypeReader.h" ex="false" tool="3" flavor2="0">
--- a/src/StreamRelationalReader.h Sat Aug 25 18:25:02 2018 +0200
+++ b/src/StreamRelationalReader.h Sat Aug 25 19:10:24 2018 +0200
@@ -9,6 +9,9 @@
#include "../include/relpipe/reader/typedefs.h"
#include "../include/relpipe/reader/RelationalReader.h"
#include "../include/relpipe/reader/TypeId.h"
+#include "../include/relpipe/reader/handlers/RelationalReaderBaseHandler.h"
+#include "../include/relpipe/reader/handlers/RelationalReaderStringHandler.h"
+#include "../include/relpipe/reader/handlers/RelationalReaderValueHandler.h"
#include "DataTypeReaderBase.h"
#include "types/BooleanDataTypeReader.h"
#include "types/IntegerDataTypeReader.h"