From 200fbaed2bb6af4d661a24f9943e56512350fbff Mon Sep 17 00:00:00 2001 From: Dain Sundstrom Date: Fri, 24 Aug 2012 11:41:05 -0700 Subject: [PATCH 1/2] Add standalone executable jar --- pom.xml | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 64 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index e82bfda71c87f..51e72dfd3720e 100644 --- a/pom.xml +++ b/pom.xml @@ -54,11 +54,6 @@ event-experimental - - io.airlift - jmx-http-rpc-experimental - - io.airlift log @@ -67,11 +62,23 @@ io.airlift http-server + + + org.eclipse.jetty.orbit + javax.servlet + + io.airlift jaxrs + + + org.eclipse.jetty.orbit + javax.servlet + + @@ -136,4 +143,56 @@ test + + + + org.apache.maven.plugins + maven-shade-plugin + 1.5 + + + package + + shade + + + true + standalone + + + + + ${main-class} + + + + + + io.airlift:launcher + + + + + + + + + org.skife.maven + really-executable-jar-maven-plugin + 1.0.5 + + -Xmx1G + + + + + package + + really-executable-jar + + + + + + From 5e21f594b45ac79c019c3032e3b9af72caaf7a7b Mon Sep 17 00:00:00 2001 From: Dain Sundstrom Date: Fri, 24 Aug 2012 11:44:52 -0700 Subject: [PATCH 2/2] Add support for '\u0001' column delimiter --- src/main/java/com/facebook/presto/Main.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/facebook/presto/Main.java b/src/main/java/com/facebook/presto/Main.java index 81d308e7db87d..e10feb0c44967 100644 --- a/src/main/java/com/facebook/presto/Main.java +++ b/src/main/java/com/facebook/presto/Main.java @@ -66,8 +66,8 @@ public void run() @Command(name = "csv", description = "Convert CSB to columns") public static class ConvertCsv extends BaseCommand { - @Option(name = {"--column-separator"}, description = "Column separator") - public char columnSeparator = ','; + @Option(name = {"-d", "--column-delimiter"}, description = "Column delimiter character") + public String columnSeparator = ","; @Option(name = {"-o", "--output-dir"}, description = "Output dir") public String outputDir = "data"; @@ -115,7 +115,20 @@ public InputStreamReader getInput() } }; } - Csv.processCsv(inputSupplier, columnSeparator, processors.build()); + Csv.processCsv(inputSupplier, toChar(columnSeparator), processors.build()); + } + + private char toChar(String string) + { + Preconditions.checkArgument(!string.isEmpty(), "String is empty"); + if (string.length() == 1) { + return string.charAt(0); + } + if (string.length() == 6 && string.startsWith("\\u")) { + int value = Integer.parseInt(string.substring(2), 16); + return (char) value; + } + throw new IllegalArgumentException(String.format("Can not convert '%s' to a char", string)); } private OutputSupplier newCreateDirectoryOutputStreamSupplier(final File file)