aboutsummaryrefslogtreecommitdiff
path: root/apps/sample-convert.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'apps/sample-convert.cpp')
-rw-r--r--apps/sample-convert.cpp27
1 files changed, 5 insertions, 22 deletions
diff --git a/apps/sample-convert.cpp b/apps/sample-convert.cpp
index 79d6f1c..c6f5d01 100644
--- a/apps/sample-convert.cpp
+++ b/apps/sample-convert.cpp
@@ -18,9 +18,9 @@ public:
options
("help", "produce this help message")
("input", po::value<string>(&input_file)->default_value("-"))
- ("input-format", po::value<string>(&input_format)->default_value("csv"))
+// ("input-format", po::value<string>(&input_format)->default_value("csv"))
("output", po::value<string>(&output_file)->default_value("-"))
- ("output-format", po::value<string>(&output_format)->default_value("plain"));
+ ("output-format", po::value<sample_format_type>(&output_format)->default_value(sample_format_type::KEY_VALUE));
}
void add_extra_options(po::options_description &all_options) override {
@@ -36,7 +36,6 @@ public:
auto vm = execution.vm;
KeyDictionary dict;
- shared_ptr<SampleOutputStream> output;
istream *inputStream;
if (input_file == "-") {
@@ -60,23 +59,7 @@ public:
}
}
- if (output_format == "plain") {
- output = make_shared<CsvSampleOutputStream>(outputStream, dict);
- } else if (output_format == "json") {
- output = make_shared<JsonSampleOutputStream>(outputStream, dict);
- } else if (output_format == "sql") {
- if (table_name.size() == 0) {
- cerr << "Missing option: table-name" << endl;
- return EXIT_FAILURE;
- }
-
- output = make_shared<SqlSampleOutputStream>(outputStream, dict, table_name);
- } else if (output_format == "csv") {
- output = make_shared<CsvSampleOutputStream>(outputStream, dict);
- } else {
- cerr << "Unsupported output format: " << output_format << endl;
- return EXIT_FAILURE;
- }
+ shared_ptr<SampleOutputStream> output = open_sample_output_stream(outputStream, dict, output_format);
auto input = make_shared<KeyValueSampleParser>(output, dict);
@@ -90,8 +73,8 @@ public:
}
private:
- string input_file, input_format;
- string output_file, output_format;
+ string input_file, output_file;
+ sample_format_type output_format;
string table_name;
};