aboutsummaryrefslogtreecommitdiff
path: root/FileReader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'FileReader.cpp')
-rw-r--r--FileReader.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/FileReader.cpp b/FileReader.cpp
index 2c7a50e..d2d888f 100644
--- a/FileReader.cpp
+++ b/FileReader.cpp
@@ -1,10 +1,14 @@
+#include <memory>
+
#include "FileReader.h"
#include "FileStrategy.h"
-FileStrategy & FileReader::open(const std::string url) {
+using namespace std;
+
+unique_ptr<FileStrategy> FileReader::open(const std::string url) {
FileStrategy * reader = find_reader(url)->clone();
reader->open(url);
- return *reader;
+ return unique_ptr<FileStrategy>(reader);
}
void FileReader::register_strategy(const std::string type, const FileStrategy * node) {