Adding 'cleanjson' output format, along with implementation of lists.
Also includes test-framework update to allow testing of cleanjson.
Change-Id: I5c37d3b5aad7f286eba1cb8cb5f05ad456a6521c
Reviewed-on: https://asterix-gerrit.ics.uci.edu/361
Reviewed-by: Ian Maxon <imaxon@apache.org>
Tested-by: Ian Maxon <imaxon@apache.org>
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/common/APIFramework.java b/asterix-app/src/main/java/org/apache/asterix/api/common/APIFramework.java
index db6d041..3a33bbe 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/common/APIFramework.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/common/APIFramework.java
@@ -324,8 +324,8 @@
builder.setPredicateEvaluatorFactoryProvider(format.getPredicateEvaluatorFactoryProvider());
switch (conf.fmt()) {
- case JSON:
- builder.setPrinterProvider(format.getJSONPrinterFactoryProvider());
+ case LOSSLESS_JSON:
+ builder.setPrinterProvider(format.getLosslessJSONPrinterFactoryProvider());
break;
case CSV:
builder.setPrinterProvider(format.getCSVPrinterFactoryProvider());
@@ -333,6 +333,9 @@
case ADM:
builder.setPrinterProvider(format.getADMPrinterFactoryProvider());
break;
+ case CLEAN_JSON:
+ builder.setPrinterProvider(format.getCleanJSONPrinterFactoryProvider());
+ break;
default:
throw new RuntimeException("Unexpected OutputFormat!");
}
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/common/SessionConfig.java b/asterix-app/src/main/java/org/apache/asterix/api/common/SessionConfig.java
index 17752a3..4e64802 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/common/SessionConfig.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/common/SessionConfig.java
@@ -32,7 +32,7 @@
* <li> It also allows you to request additional output for optional
* out-of-band data about the execution (query plan, etc).
* <li> It allows you to specify the output format for the primary
- * execution output - JSON, CSV, etc.
+ * execution output - LOSSLESS_JSON, CSV, etc.
* <li> It allows you to specify output format-specific parameters.
*/
@@ -42,8 +42,9 @@
*/
public enum OutputFormat {
ADM,
- JSON,
- CSV
+ CSV,
+ CLEAN_JSON,
+ LOSSLESS_JSON
};
/**
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/APIServlet.java b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/APIServlet.java
index 35d4c37..99706ed 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/APIServlet.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/APIServlet.java
@@ -69,9 +69,11 @@
} else if (output.equals("CSV-Header")) {
format = OutputFormat.CSV;
csv_and_header = true;
+ } else if (output.equals("LOSSLESS_JSON")) {
+ format = OutputFormat.LOSSLESS_JSON;
} else {
// Default output format
- format = OutputFormat.JSON;
+ format = OutputFormat.CLEAN_JSON;
}
String query = request.getParameter("query");
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ConnectorAPIServlet.java b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ConnectorAPIServlet.java
index 1091a29..b213bca 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ConnectorAPIServlet.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ConnectorAPIServlet.java
@@ -46,7 +46,7 @@
/***
* The REST API that takes a dataverse name and a dataset name as the input
- * and returns an array of file splits (IP, file-path) of the dataset in JSON.
+ * and returns an array of file splits (IP, file-path) of the dataset in LOSSLESS_JSON.
* It is mostly used by external runtime, e.g., Pregelix or IMRU to pull data
* in parallel from existing AsterixDB datasets.
*
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/QueryStatusAPIServlet.java b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/QueryStatusAPIServlet.java
index 4a49dd7..2751945 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/QueryStatusAPIServlet.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/QueryStatusAPIServlet.java
@@ -68,7 +68,7 @@
JobId jobId = new JobId(handle.getLong(0));
ResultSetId rsId = new ResultSetId(handle.getLong(1));
- /* TODO(madhusudancs): We need to find a way to JSON serialize default format obtained from
+ /* TODO(madhusudancs): We need to find a way to LOSSLESS_JSON serialize default format obtained from
* metadataProvider in the AQLTranslator and store it as part of the result handle.
*/
ResultReader resultReader = new ResultReader(hcc, hds);
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/RESTAPIServlet.java b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/RESTAPIServlet.java
index 314f0e0..7db0c94 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/RESTAPIServlet.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/RESTAPIServlet.java
@@ -66,9 +66,9 @@
throws IOException {
response.setCharacterEncoding("utf-8");
- // JSON output is the default; most generally useful for a
+ // CLEAN_JSON output is the default; most generally useful for a
// programmatic HTTP API
- OutputFormat format = OutputFormat.JSON;
+ OutputFormat format = OutputFormat.CLEAN_JSON;
// First check the "output" servlet parameter.
String output = request.getParameter("output");
@@ -92,6 +92,13 @@
}
}
+ // If it's JSON, check for the "lossless" flag
+ if (format == OutputFormat.CLEAN_JSON &&
+ ("true".equals(request.getParameter("lossless")) ||
+ (accept != null && accept.contains("lossless=true")))) {
+ format = OutputFormat.LOSSLESS_JSON;
+ }
+
SessionConfig sessionConfig = new SessionConfig(response.getWriter(), format);
// Now that format is set, output the content-type
@@ -99,7 +106,9 @@
case ADM:
response.setContentType("application/x-adm");
break;
- case JSON:
+ case CLEAN_JSON:
+ // No need to reflect "clean-ness" in output type; fall through
+ case LOSSLESS_JSON:
response.setContentType("application/json");
break;
case CSV: {
diff --git a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
index dcfdd97..f5b5cbb 100644
--- a/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
+++ b/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
@@ -52,12 +52,12 @@
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
- OutputFormat format = OutputFormat.JSON;
+ OutputFormat format = OutputFormat.LOSSLESS_JSON;
String accept = request.getHeader("Accept");
if ((accept == null) || (accept.contains("application/x-adm"))) {
format = OutputFormat.ADM;
} else if (accept.contains("application/json")) {
- format = OutputFormat.JSON;
+ format = OutputFormat.LOSSLESS_JSON;
}
StringWriter sw = new StringWriter();
IOUtils.copy(request.getInputStream(), sw, StandardCharsets.UTF_8.name());
diff --git a/asterix-app/src/main/java/org/apache/asterix/result/ResultUtils.java b/asterix-app/src/main/java/org/apache/asterix/result/ResultUtils.java
index 9b81ded..44c878d 100644
--- a/asterix-app/src/main/java/org/apache/asterix/result/ResultUtils.java
+++ b/asterix-app/src/main/java/org/apache/asterix/result/ResultUtils.java
@@ -117,9 +117,10 @@
case CSV:
need_commas = false;
break;
- case JSON:
+ case LOSSLESS_JSON:
+ case CLEAN_JSON:
case ADM:
- // Conveniently, JSON and ADM have the same syntax for an
+ // Conveniently, LOSSLESS_JSON and ADM have the same syntax for an
// "ordered list", and our representation of the result of a
// statement is an ordered list of instances.
conf.out().print("[ ");
@@ -167,7 +168,8 @@
conf.out().flush();
switch (conf.fmt()) {
- case JSON:
+ case LOSSLESS_JSON:
+ case CLEAN_JSON:
case ADM:
conf.out().println(" ]");
break;
diff --git a/asterix-app/src/main/resources/webui/querytemplate.html b/asterix-app/src/main/resources/webui/querytemplate.html
index 9088251..8308a61 100644
--- a/asterix-app/src/main/resources/webui/querytemplate.html
+++ b/asterix-app/src/main/resources/webui/querytemplate.html
@@ -77,7 +77,7 @@
var errorPattern = /<div class="accordion" id="errorblock">/g;
var sectionsSeparator = '<h4>';
var resultPat = 'Results:</h4>';
-
+
if (errorPattern.test(data)) {
$('#output-heading').html('Error');
$('#output-heading').addClass('error');
@@ -210,7 +210,7 @@
<label class="query">Query</label>
<textarea rows="10" id="qry" name="query" class="query" value="%s" placeholder="Type your AQL query ..."></textarea>
</div>
-
+
<div class="btn-group">
<button id="checkboxes-on" class="btn">
<i id="opts" class="icon-ok" style="display:none;"></i>Select Options</button>
@@ -225,7 +225,8 @@
<option selected value="ADM">ADM</option>
<option value="CSV">CSV (no header)</option>
<option value="CSV-Header">CSV (with header)</option>
- <option value="JSON">JSON</option>
+ <option value="CLEAN_JSON">JSON</option>
+ <option value="LOSSLESS_JSON">JSON (lossless)</option>
</select>
</label>
<label class="checkbox optlabel"><input type="checkbox" name="print-expr-tree" value="true" /> Print parsed expressions</label>
@@ -260,4 +261,3 @@
</div>
</body>
</html>
-
diff --git a/asterix-app/src/test/resources/runtimets/results/json/int01-cleanjson/int01.1.json b/asterix-app/src/test/resources/runtimets/results/json/int01-cleanjson/int01.1.json
new file mode 100644
index 0000000..205afcd
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/json/int01-cleanjson/int01.1.json
@@ -0,0 +1,8 @@
+[ [ { "int64":
+1
+}
+, { "int64":
+2
+}
+ ]
+ ]
diff --git a/asterix-app/src/test/resources/runtimets/results/json/int01/int01.1.json b/asterix-app/src/test/resources/runtimets/results/json/int01-losslessjson/int01.1.json
similarity index 100%
rename from asterix-app/src/test/resources/runtimets/results/json/int01/int01.1.json
rename to asterix-app/src/test/resources/runtimets/results/json/int01-losslessjson/int01.1.json
diff --git a/asterix-app/src/test/resources/runtimets/testsuite.xml b/asterix-app/src/test/resources/runtimets/testsuite.xml
index ba471cb..4dff76b 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite.xml
@@ -6675,7 +6675,14 @@
<test-group name="json">
<test-case FilePath="json">
<compilation-unit name="int01">
- <output-dir compare="JSON">int01</output-dir>
+ <output-dir compare="Lossless-JSON">int01-losslessjson</output-dir>
+ </compilation-unit>
+ </test-case>
+ </test-group>
+ <test-group name="cleanjson">
+ <test-case FilePath="json">
+ <compilation-unit name="int01">
+ <output-dir compare="Clean-JSON">int01-cleanjson</output-dir>
</compilation-unit>
</test-case>
</test-group>
diff --git a/asterix-common/src/test/java/org/apache/asterix/test/aql/TestsUtils.java b/asterix-common/src/test/java/org/apache/asterix/test/aql/TestsUtils.java
index ff8bb3d..8ff524e 100644
--- a/asterix-common/src/test/java/org/apache/asterix/test/aql/TestsUtils.java
+++ b/asterix-common/src/test/java/org/apache/asterix/test/aql/TestsUtils.java
@@ -436,7 +436,7 @@
resultStream = executeAnyAQLAsync(statement, true, fmt);
if (queryCount >= expectedResultFileCtxs.size()) {
- throw new IllegalStateException("no result file for " + testFile.toString());
+ throw new IllegalStateException("no result file for " + testFile.toString() + "; queryCount: " + queryCount + ", filectxs.size: " + expectedResultFileCtxs.size());
}
expectedResultFile = expectedResultFileCtxs.get(queryCount).getFile();
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ABooleanPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ABooleanPrinter.java
index 2374d01..4a67f2a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ABooleanPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ABooleanPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ABooleanPrinterFactory.java
index 3ead821..05c7bf1 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ABooleanPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ACirclePrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ACirclePrinter.java
index b1e39c1..fe85f04 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ACirclePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ACirclePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ACirclePrinterFactory.java
index a849ae2..d459476 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ACirclePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADatePrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADatePrinter.java
index 2bb1a6d..4988483 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADatePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADatePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADatePrinterFactory.java
index 79b17d9..fecc28e 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADatePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADateTimePrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADateTimePrinter.java
index cc16d76..19d1270 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADateTimePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADateTimePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADateTimePrinterFactory.java
index 667a01b..3c8f837 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADateTimePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADayTimeDurationPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADayTimeDurationPrinter.java
index 7a118da..3d7ea84 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADayTimeDurationPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADayTimeDurationPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADayTimeDurationPrinterFactory.java
index 8d62c16..f00124b 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADayTimeDurationPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADoublePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADoublePrinter.java
index c32bab1..bab9f01 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADoublePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADoublePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADoublePrinterFactory.java
index b481be3..daa1bdf 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADoublePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADurationPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADurationPrinter.java
index b38cd8b..14ee58e 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADurationPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADurationPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADurationPrinterFactory.java
index 5caea8f..c8009c0 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ADurationPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AFloatPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AFloatPrinter.java
index c28915f..ee9373e 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AFloatPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AFloatPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AFloatPrinterFactory.java
index cb00884..3d5e5f4 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AFloatPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt16Printer.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16Printer.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt16Printer.java
index fdfabad..e4d910f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt16Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt16PrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16PrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt16PrinterFactory.java
index d95b264..3f1c421 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt16PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt32Printer.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32Printer.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt32Printer.java
index e7b770e..597988a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt32Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt32PrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32PrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt32PrinterFactory.java
index e715544..84d37e8 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt32PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt64Printer.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64Printer.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt64Printer.java
index ac2ce78..dac725a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt64Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt64PrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64PrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt64PrinterFactory.java
index 270de84..0dd9c20 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt64PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt8Printer.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8Printer.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt8Printer.java
index e5f3cd1..86ade85 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt8Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt8PrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8PrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt8PrinterFactory.java
index 3d52677..72cfd0c 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AInt8PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AIntervalPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AIntervalPrinter.java
index 8744338..e77ef94 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AIntervalPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AIntervalPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AIntervalPrinterFactory.java
index d889574..a0fdfe7 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AIntervalPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ALinePrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ALinePrinter.java
index 039457a..88b98c7 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ALinePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ALinePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ALinePrinterFactory.java
index 6bd8914..4d9fa45 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ALinePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullPrinter.java
index f681a79..79dc018 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullPrinterFactory.java
index e3bc263..a1aecf0 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullableFieldPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullableFieldPrinterFactory.java
similarity index 86%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullableFieldPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullableFieldPrinterFactory.java
index be9307a..35a5b50 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullableFieldPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ANullableFieldPrinterFactory.java
@@ -16,11 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
-import org.apache.asterix.formats.nontagged.AqlJSONPrinterFactoryProvider;
+import org.apache.asterix.formats.nontagged.AqlLosslessJSONPrinterFactoryProvider;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.AUnionType;
import org.apache.asterix.om.types.BuiltinType;
@@ -46,9 +46,9 @@
@Override
public void init() throws AlgebricksException {
- nullPrinter = (AqlJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(BuiltinType.ANULL))
+ nullPrinter = (AqlLosslessJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(BuiltinType.ANULL))
.createPrinter();
- fieldPrinter = (AqlJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getNullableType()))
+ fieldPrinter = (AqlLosslessJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getNullableType()))
.createPrinter();
}
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
index faf21a3..0acd4f3 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinterFactory.java
index b3b029c..7415046 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AObjectPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AOrderedlistPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AOrderedlistPrinterFactory.java
similarity index 97%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AOrderedlistPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AOrderedlistPrinterFactory.java
index a96b512..00d59f6 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AOrderedlistPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AOrderedlistPrinterFactory.java
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
import org.apache.asterix.om.pointables.PointableAllocator;
import org.apache.asterix.om.pointables.base.DefaultOpenFieldType;
import org.apache.asterix.om.pointables.base.IVisitablePointable;
-import org.apache.asterix.om.pointables.printer.json.APrintVisitor;
+import org.apache.asterix.om.pointables.printer.json.clean.APrintVisitor;
import org.apache.asterix.om.types.AOrderedListType;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.IAType;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APoint3DPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APoint3DPrinter.java
index f88afad..6854c69 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APoint3DPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APoint3DPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APoint3DPrinterFactory.java
index 55e3afb..ad41810 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APoint3DPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APointPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APointPrinter.java
index 82a3c4c..b3b922b 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APointPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APointPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APointPrinterFactory.java
index 317079c..6f55923 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APointPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APolygonPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APolygonPrinter.java
index 4e86b16..ff30909 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APolygonPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APolygonPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APolygonPrinterFactory.java
index e00639c..3b79723 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/APolygonPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARecordPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARecordPrinterFactory.java
similarity index 96%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARecordPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARecordPrinterFactory.java
index 6625da7..0d1e089 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARecordPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARecordPrinterFactory.java
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
import org.apache.asterix.om.pointables.PointableAllocator;
import org.apache.asterix.om.pointables.base.DefaultOpenFieldType;
import org.apache.asterix.om.pointables.base.IVisitablePointable;
-import org.apache.asterix.om.pointables.printer.json.APrintVisitor;
+import org.apache.asterix.om.pointables.printer.json.clean.APrintVisitor;
import org.apache.asterix.om.types.ARecordType;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.IAType;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARectanglePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARectanglePrinter.java
index 276eb73..36a888f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARectanglePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARectanglePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARectanglePrinterFactory.java
index 8ffaf2f..e470f12 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ARectanglePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AStringPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AStringPrinter.java
index bd19b66..6abe4df 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AStringPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.IOException;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AStringPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AStringPrinterFactory.java
index 73ecb43..5cfdfe9 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AStringPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ATimePrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ATimePrinter.java
index 2a0f950..625494a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ATimePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ATimePrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ATimePrinterFactory.java
index 09dd4f7..1fd4892 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/ATimePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnionPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUnionPrinterFactory.java
similarity index 92%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnionPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUnionPrinterFactory.java
index e37a050..2d1b35f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnionPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUnionPrinterFactory.java
@@ -16,12 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
import java.util.List;
-import org.apache.asterix.formats.nontagged.AqlJSONPrinterFactoryProvider;
+import org.apache.asterix.formats.nontagged.AqlLosslessJSONPrinterFactoryProvider;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.AUnionType;
import org.apache.asterix.om.types.IAType;
@@ -52,7 +52,7 @@
unionList = unionType.getUnionList();
printers = new IPrinter[unionType.getUnionList().size()];
for (int i = 0; i < printers.length; i++) {
- printers[i] = (AqlJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getUnionList()
+ printers[i] = (AqlLosslessJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getUnionList()
.get(i))).createPrinter();
printers[i].init();
}
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnorderedlistPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUnorderedlistPrinterFactory.java
similarity index 97%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnorderedlistPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUnorderedlistPrinterFactory.java
index 3ea8a84..8004c75 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnorderedlistPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AUnorderedlistPrinterFactory.java
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
import org.apache.asterix.om.pointables.PointableAllocator;
import org.apache.asterix.om.pointables.base.DefaultOpenFieldType;
import org.apache.asterix.om.pointables.base.IVisitablePointable;
-import org.apache.asterix.om.pointables.printer.json.APrintVisitor;
+import org.apache.asterix.om.pointables.printer.json.clean.APrintVisitor;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.AUnorderedListType;
import org.apache.asterix.om.types.IAType;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AYearMonthDurationPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AYearMonthDurationPrinter.java
index 1c11581..8f7c86b 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AYearMonthDurationPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AYearMonthDurationPrinterFactory.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AYearMonthDurationPrinterFactory.java
index 89710fb..16886db 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/clean/AYearMonthDurationPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.clean;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ABooleanPrinter.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ABooleanPrinter.java
index 2374d01..1ea3195 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ABooleanPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ABooleanPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ABooleanPrinterFactory.java
index 3ead821..4bbefe1 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ABooleanPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ABooleanPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ACirclePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ACirclePrinter.java
index b1e39c1..fa41267 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ACirclePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ACirclePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ACirclePrinterFactory.java
index a849ae2..60fe02d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ACirclePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ACirclePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADatePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADatePrinter.java
index 2bb1a6d..d7eb138 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADatePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADatePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADatePrinterFactory.java
index 79b17d9..ff1c294 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADatePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADatePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADateTimePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADateTimePrinter.java
index cc16d76..0705283 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADateTimePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADateTimePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADateTimePrinterFactory.java
index 667a01b..edc2176 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADateTimePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADateTimePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADayTimeDurationPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADayTimeDurationPrinter.java
index 7a118da..a00519a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADayTimeDurationPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADayTimeDurationPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADayTimeDurationPrinterFactory.java
index 8d62c16..e28f3aa 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADayTimeDurationPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADayTimeDurationPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADoublePrinter.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADoublePrinter.java
index c32bab1..8fcf64d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADoublePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADoublePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADoublePrinterFactory.java
index b481be3..a4215b9 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADoublePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADoublePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADurationPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADurationPrinter.java
index b38cd8b..315fd30 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADurationPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADurationPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADurationPrinterFactory.java
index 5caea8f..123e4d2 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ADurationPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ADurationPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AFloatPrinter.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AFloatPrinter.java
index c28915f..6954282 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AFloatPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AFloatPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AFloatPrinterFactory.java
index cb00884..aba579d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AFloatPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AFloatPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt16Printer.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16Printer.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt16Printer.java
index fdfabad..22506e1 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt16Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt16PrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16PrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt16PrinterFactory.java
index d95b264..42ff51a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt16PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt16PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt32Printer.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32Printer.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt32Printer.java
index e7b770e..3ebaec9 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt32Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt32PrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32PrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt32PrinterFactory.java
index e715544..59f60c2 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt32PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt32PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt64Printer.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64Printer.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt64Printer.java
index ac2ce78..9620116 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt64Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt64PrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64PrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt64PrinterFactory.java
index 270de84..4f9377d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt64PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt64PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8Printer.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt8Printer.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8Printer.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt8Printer.java
index e5f3cd1..c343717 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8Printer.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt8Printer.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8PrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt8PrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8PrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt8PrinterFactory.java
index 3d52677..3ced653 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AInt8PrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AInt8PrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AIntervalPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AIntervalPrinter.java
index 8744338..7727f92 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AIntervalPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AIntervalPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AIntervalPrinterFactory.java
index d889574..7dc9326 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AIntervalPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AIntervalPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ALinePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ALinePrinter.java
index 039457a..24dd017 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ALinePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ALinePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ALinePrinterFactory.java
index 6bd8914..c471729 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ALinePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ALinePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullPrinter.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullPrinter.java
index f681a79..e3663fc 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullPrinterFactory.java
index e3bc263..e471086 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullableFieldPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullableFieldPrinterFactory.java
similarity index 86%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullableFieldPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullableFieldPrinterFactory.java
index be9307a..f05f55c 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ANullableFieldPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ANullableFieldPrinterFactory.java
@@ -16,11 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
-import org.apache.asterix.formats.nontagged.AqlJSONPrinterFactoryProvider;
+import org.apache.asterix.formats.nontagged.AqlLosslessJSONPrinterFactoryProvider;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.AUnionType;
import org.apache.asterix.om.types.BuiltinType;
@@ -46,9 +46,9 @@
@Override
public void init() throws AlgebricksException {
- nullPrinter = (AqlJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(BuiltinType.ANULL))
+ nullPrinter = (AqlLosslessJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(BuiltinType.ANULL))
.createPrinter();
- fieldPrinter = (AqlJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getNullableType()))
+ fieldPrinter = (AqlLosslessJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getNullableType()))
.createPrinter();
}
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
index faf21a3..e82ea65 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinterFactory.java
index b3b029c..f8a2f8e 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AObjectPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AObjectPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AOrderedlistPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AOrderedlistPrinterFactory.java
similarity index 96%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AOrderedlistPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AOrderedlistPrinterFactory.java
index a96b512..7e4152f 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AOrderedlistPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AOrderedlistPrinterFactory.java
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
import org.apache.asterix.om.pointables.PointableAllocator;
import org.apache.asterix.om.pointables.base.DefaultOpenFieldType;
import org.apache.asterix.om.pointables.base.IVisitablePointable;
-import org.apache.asterix.om.pointables.printer.json.APrintVisitor;
+import org.apache.asterix.om.pointables.printer.json.lossless.APrintVisitor;
import org.apache.asterix.om.types.AOrderedListType;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.IAType;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APoint3DPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APoint3DPrinter.java
index f88afad..fb21c8d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APoint3DPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APoint3DPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APoint3DPrinterFactory.java
index 55e3afb..a6cd738 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APoint3DPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APoint3DPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APointPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APointPrinter.java
index 82a3c4c..8edf6d7 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APointPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APointPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APointPrinterFactory.java
index 317079c..53c2f42 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APointPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APointPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APolygonPrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APolygonPrinter.java
index 4e86b16..c94e19e 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APolygonPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APolygonPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APolygonPrinterFactory.java
index e00639c..a808e8c 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/APolygonPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/APolygonPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARecordPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARecordPrinterFactory.java
similarity index 96%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARecordPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARecordPrinterFactory.java
index 6625da7..c4c1e23 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARecordPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARecordPrinterFactory.java
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
import org.apache.asterix.om.pointables.PointableAllocator;
import org.apache.asterix.om.pointables.base.DefaultOpenFieldType;
import org.apache.asterix.om.pointables.base.IVisitablePointable;
-import org.apache.asterix.om.pointables.printer.json.APrintVisitor;
+import org.apache.asterix.om.pointables.printer.json.lossless.APrintVisitor;
import org.apache.asterix.om.types.ARecordType;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.IAType;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARectanglePrinter.java
similarity index 99%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARectanglePrinter.java
index 276eb73..4393650 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARectanglePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARectanglePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARectanglePrinterFactory.java
index 8ffaf2f..1fe5407 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ARectanglePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ARectanglePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AStringPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AStringPrinter.java
index bd19b66..55c285d 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AStringPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.IOException;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AStringPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AStringPrinterFactory.java
index 73ecb43..5f98719 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AStringPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AStringPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ATimePrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ATimePrinter.java
index 2a0f950..cd5fcc0 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ATimePrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ATimePrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ATimePrinterFactory.java
index 09dd4f7..fed83c9 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/ATimePrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/ATimePrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnionPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUnionPrinterFactory.java
similarity index 92%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnionPrinterFactory.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUnionPrinterFactory.java
index e37a050..6be1207 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnionPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUnionPrinterFactory.java
@@ -16,12 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
import java.util.List;
-import org.apache.asterix.formats.nontagged.AqlJSONPrinterFactoryProvider;
+import org.apache.asterix.formats.nontagged.AqlLosslessJSONPrinterFactoryProvider;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.AUnionType;
import org.apache.asterix.om.types.IAType;
@@ -52,7 +52,7 @@
unionList = unionType.getUnionList();
printers = new IPrinter[unionType.getUnionList().size()];
for (int i = 0; i < printers.length; i++) {
- printers[i] = (AqlJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getUnionList()
+ printers[i] = (AqlLosslessJSONPrinterFactoryProvider.INSTANCE.getPrinterFactory(unionType.getUnionList()
.get(i))).createPrinter();
printers[i].init();
}
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnorderedlistPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUnorderedlistPrinterFactory.java
similarity index 96%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnorderedlistPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUnorderedlistPrinterFactory.java
index 3ea8a84..cad45e1 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AUnorderedlistPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AUnorderedlistPrinterFactory.java
@@ -16,14 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
import org.apache.asterix.om.pointables.PointableAllocator;
import org.apache.asterix.om.pointables.base.DefaultOpenFieldType;
import org.apache.asterix.om.pointables.base.IVisitablePointable;
-import org.apache.asterix.om.pointables.printer.json.APrintVisitor;
+import org.apache.asterix.om.pointables.printer.json.lossless.APrintVisitor;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.om.types.AUnorderedListType;
import org.apache.asterix.om.types.IAType;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinter.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AYearMonthDurationPrinter.java
similarity index 99%
rename from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AYearMonthDurationPrinter.java
index 1c11581..d138678 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AYearMonthDurationPrinter.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinterFactory.java b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AYearMonthDurationPrinterFactory.java
similarity index 98%
copy from asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinterFactory.java
copy to asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AYearMonthDurationPrinterFactory.java
index 89710fb..ca2201b 100644
--- a/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/AYearMonthDurationPrinterFactory.java
+++ b/asterix-om/src/main/java/org/apache/asterix/dataflow/data/nontagged/printers/json/lossless/AYearMonthDurationPrinterFactory.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.asterix.dataflow.data.nontagged.printers.json;
+package org.apache.asterix.dataflow.data.nontagged.printers.json.lossless;
import org.apache.hyracks.algebricks.data.IPrinter;
import org.apache.hyracks.algebricks.data.IPrinterFactory;
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/base/IDataFormat.java b/asterix-om/src/main/java/org/apache/asterix/formats/base/IDataFormat.java
index ffbcd20..8dcbb77 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/base/IDataFormat.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/base/IDataFormat.java
@@ -63,10 +63,12 @@
// QQQ Refactor: Make this accept an APIFramework.OutputFormat parameter
public IPrinterFactoryProvider getADMPrinterFactoryProvider();
- public IPrinterFactoryProvider getJSONPrinterFactoryProvider();
+ public IPrinterFactoryProvider getLosslessJSONPrinterFactoryProvider();
public IPrinterFactoryProvider getCSVPrinterFactoryProvider();
+ public IPrinterFactoryProvider getCleanJSONPrinterFactoryProvider();
+
public INullWriterFactory getNullWriterFactory();
public Triple<ICopyEvaluatorFactory, ScalarFunctionCallExpression, IAType> partitioningEvaluatorFactory(
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlJSONPrinterFactoryProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
similarity index 86%
rename from asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlJSONPrinterFactoryProvider.java
rename to asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
index 96dcbb5..0f58aee 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlJSONPrinterFactoryProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlCleanJSONPrinterFactoryProvider.java
@@ -21,34 +21,34 @@
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ABinaryPrinterFactory;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.AUUIDPrinterFactory;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ShortWithoutTypeInfoPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ABooleanPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ACirclePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADatePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADateTimePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADayTimeDurationPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADoublePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADurationPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AFloatPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt16PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt32PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt64PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt8PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AIntervalPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ALinePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ANullPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ANullableFieldPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AObjectPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AOrderedlistPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APoint3DPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APointPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APolygonPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ARecordPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ARectanglePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AStringPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ATimePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AUnionPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AUnorderedlistPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AYearMonthDurationPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ABooleanPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ACirclePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADatePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADateTimePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADayTimeDurationPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADoublePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADurationPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AFloatPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt16PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt32PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt64PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt8PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AIntervalPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ALinePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ANullPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ANullableFieldPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AObjectPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AOrderedlistPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.APoint3DPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.APointPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.APolygonPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ARecordPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ARectanglePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AStringPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ATimePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AUnionPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AUnorderedlistPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AYearMonthDurationPrinterFactory;
import org.apache.asterix.om.types.AOrderedListType;
import org.apache.asterix.om.types.ARecordType;
import org.apache.asterix.om.types.AUnionType;
@@ -58,11 +58,11 @@
import org.apache.hyracks.algebricks.data.IPrinterFactory;
import org.apache.hyracks.algebricks.data.IPrinterFactoryProvider;
-public class AqlJSONPrinterFactoryProvider implements IPrinterFactoryProvider {
+public class AqlCleanJSONPrinterFactoryProvider implements IPrinterFactoryProvider {
- public static final AqlJSONPrinterFactoryProvider INSTANCE = new AqlJSONPrinterFactoryProvider();
+ public static final AqlCleanJSONPrinterFactoryProvider INSTANCE = new AqlCleanJSONPrinterFactoryProvider();
- private AqlJSONPrinterFactoryProvider() {
+ private AqlCleanJSONPrinterFactoryProvider() {
}
@Override
diff --git a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlJSONPrinterFactoryProvider.java b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
similarity index 85%
copy from asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlJSONPrinterFactoryProvider.java
copy to asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
index 96dcbb5..012265a 100644
--- a/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlJSONPrinterFactoryProvider.java
+++ b/asterix-om/src/main/java/org/apache/asterix/formats/nontagged/AqlLosslessJSONPrinterFactoryProvider.java
@@ -21,34 +21,34 @@
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ABinaryPrinterFactory;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.AUUIDPrinterFactory;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ShortWithoutTypeInfoPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ABooleanPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ACirclePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADatePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADateTimePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADayTimeDurationPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADoublePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADurationPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AFloatPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt16PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt32PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt64PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt8PrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AIntervalPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ALinePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ANullPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ANullableFieldPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AObjectPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AOrderedlistPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APoint3DPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APointPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APolygonPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ARecordPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ARectanglePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AStringPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ATimePrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AUnionPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AUnorderedlistPrinterFactory;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AYearMonthDurationPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ABooleanPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ACirclePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADatePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADateTimePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADayTimeDurationPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADoublePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADurationPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AFloatPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt16PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt32PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt64PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt8PrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AIntervalPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ALinePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ANullPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ANullableFieldPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AObjectPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AOrderedlistPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.APoint3DPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.APointPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.APolygonPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ARecordPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ARectanglePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AStringPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ATimePrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AUnionPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AUnorderedlistPrinterFactory;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AYearMonthDurationPrinterFactory;
import org.apache.asterix.om.types.AOrderedListType;
import org.apache.asterix.om.types.ARecordType;
import org.apache.asterix.om.types.AUnionType;
@@ -58,11 +58,11 @@
import org.apache.hyracks.algebricks.data.IPrinterFactory;
import org.apache.hyracks.algebricks.data.IPrinterFactoryProvider;
-public class AqlJSONPrinterFactoryProvider implements IPrinterFactoryProvider {
+public class AqlLosslessJSONPrinterFactoryProvider implements IPrinterFactoryProvider {
- public static final AqlJSONPrinterFactoryProvider INSTANCE = new AqlJSONPrinterFactoryProvider();
+ public static final AqlLosslessJSONPrinterFactoryProvider INSTANCE = new AqlLosslessJSONPrinterFactoryProvider();
- private AqlJSONPrinterFactoryProvider() {
+ private AqlLosslessJSONPrinterFactoryProvider() {
}
@Override
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/AListPrinter.java b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/AListPrinter.java
similarity index 89%
copy from asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/AListPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/AListPrinter.java
index 54a3524..892a8b68 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/AListPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/AListPrinter.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.asterix.om.pointables.printer.json;
+package org.apache.asterix.om.pointables.printer.json.clean;
import java.io.IOException;
import java.io.PrintStream;
@@ -35,18 +35,13 @@
* APrintVisitor.
*/
class AListPrinter {
- private static String BEGIN = "{ \"unorderedlist\": [ ";
- private static String BEGIN_ORDERED = "{ \"orderedlist\": [ ";
- private static String END = " ] }";
+ private static String BEGIN = "[ ";
+ private static String END = " ]";
private static String COMMA = ", ";
private final Pair<PrintStream, ATypeTag> itemVisitorArg = new Pair<PrintStream, ATypeTag>(null, null);
- private String begin = BEGIN;
public AListPrinter(boolean ordered) {
- if (ordered) {
- begin = BEGIN_ORDERED;
- }
}
public void printList(AListVisitablePointable listAccessor, PrintStream ps, APrintVisitor visitor) throws IOException,
@@ -56,7 +51,7 @@
itemVisitorArg.first = ps;
// print the beginning part
- ps.print(begin);
+ ps.print(BEGIN);
// print item 0 to n-2
for (int i = 0; i < items.size() - 1; i++) {
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/APrintVisitor.java b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/APrintVisitor.java
similarity index 93%
rename from asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/APrintVisitor.java
rename to asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/APrintVisitor.java
index b459138..716069e 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/APrintVisitor.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/APrintVisitor.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.asterix.om.pointables.printer.json;
+package org.apache.asterix.om.pointables.printer.json.clean;
import java.io.PrintStream;
import java.util.HashMap;
@@ -27,27 +27,27 @@
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ABinaryHexPrinter;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.AUUIDPrinter;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ShortWithoutTypeInfoPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ABooleanPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ACirclePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADatePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADateTimePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADayTimeDurationPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADoublePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADurationPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AFloatPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt16Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt32Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt64Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt8Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ALinePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ANullPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APoint3DPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APointPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APolygonPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ARectanglePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AStringPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ATimePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AYearMonthDurationPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ABooleanPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ACirclePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADatePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADateTimePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADayTimeDurationPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADoublePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ADurationPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AFloatPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt16Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt32Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt64Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AInt8Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ALinePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ANullPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.APoint3DPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.APointPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.APolygonPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ARectanglePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AStringPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.ATimePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.clean.AYearMonthDurationPrinter;
import org.apache.asterix.om.pointables.AFlatValuePointable;
import org.apache.asterix.om.pointables.AListVisitablePointable;
import org.apache.asterix.om.pointables.ARecordVisitablePointable;
@@ -60,7 +60,7 @@
/**
* This class is a IVisitablePointableVisitor implementation which recursively
* visit a given record, list or flat value of a given type, and print it to a
- * PrintStream in JSON format.
+ * PrintStream in Clean JSON format.
*/
public class APrintVisitor implements IVisitablePointableVisitor<Void, Pair<PrintStream, ATypeTag>> {
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/ARecordPrinter.java b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/ARecordPrinter.java
similarity index 98%
rename from asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/ARecordPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/ARecordPrinter.java
index aa0570b..24815b0 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/ARecordPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/clean/ARecordPrinter.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.asterix.om.pointables.printer.json;
+package org.apache.asterix.om.pointables.printer.json.clean;
import java.io.IOException;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/AListPrinter.java b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/AListPrinter.java
similarity index 97%
rename from asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/AListPrinter.java
rename to asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/AListPrinter.java
index 54a3524..435a674 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/AListPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/AListPrinter.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.asterix.om.pointables.printer.json;
+package org.apache.asterix.om.pointables.printer.json.lossless;
import java.io.IOException;
import java.io.PrintStream;
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/APrintVisitor.java b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/APrintVisitor.java
similarity index 93%
copy from asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/APrintVisitor.java
copy to asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/APrintVisitor.java
index b459138..4bb5633 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/APrintVisitor.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/APrintVisitor.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.asterix.om.pointables.printer.json;
+package org.apache.asterix.om.pointables.printer.json.lossless;
import java.io.PrintStream;
import java.util.HashMap;
@@ -27,27 +27,27 @@
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ABinaryHexPrinter;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.AUUIDPrinter;
import org.apache.asterix.dataflow.data.nontagged.printers.adm.ShortWithoutTypeInfoPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ABooleanPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ACirclePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADatePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADateTimePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADayTimeDurationPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADoublePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ADurationPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AFloatPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt16Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt32Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt64Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AInt8Printer;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ALinePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ANullPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APoint3DPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APointPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.APolygonPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ARectanglePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AStringPrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.ATimePrinter;
-import org.apache.asterix.dataflow.data.nontagged.printers.json.AYearMonthDurationPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ABooleanPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ACirclePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADatePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADateTimePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADayTimeDurationPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADoublePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ADurationPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AFloatPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt16Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt32Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt64Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AInt8Printer;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ALinePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ANullPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.APoint3DPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.APointPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.APolygonPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ARectanglePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AStringPrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.ATimePrinter;
+import org.apache.asterix.dataflow.data.nontagged.printers.json.lossless.AYearMonthDurationPrinter;
import org.apache.asterix.om.pointables.AFlatValuePointable;
import org.apache.asterix.om.pointables.AListVisitablePointable;
import org.apache.asterix.om.pointables.ARecordVisitablePointable;
diff --git a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/ARecordPrinter.java b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/ARecordPrinter.java
similarity index 97%
copy from asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/ARecordPrinter.java
copy to asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/ARecordPrinter.java
index aa0570b..e111f76 100644
--- a/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/ARecordPrinter.java
+++ b/asterix-om/src/main/java/org/apache/asterix/om/pointables/printer/json/lossless/ARecordPrinter.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.asterix.om.pointables.printer.json;
+package org.apache.asterix.om.pointables.printer.json.lossless;
import java.io.IOException;
import java.io.PrintStream;
diff --git a/asterix-runtime/src/main/java/org/apache/asterix/runtime/formats/NonTaggedDataFormat.java b/asterix-runtime/src/main/java/org/apache/asterix/runtime/formats/NonTaggedDataFormat.java
index 1ccdf94..72c7eb1 100644
--- a/asterix-runtime/src/main/java/org/apache/asterix/runtime/formats/NonTaggedDataFormat.java
+++ b/asterix-runtime/src/main/java/org/apache/asterix/runtime/formats/NonTaggedDataFormat.java
@@ -29,7 +29,8 @@
import org.apache.asterix.formats.nontagged.AqlBinaryHashFunctionFamilyProvider;
import org.apache.asterix.formats.nontagged.AqlBinaryIntegerInspector;
import org.apache.asterix.formats.nontagged.AqlCSVPrinterFactoryProvider;
-import org.apache.asterix.formats.nontagged.AqlJSONPrinterFactoryProvider;
+import org.apache.asterix.formats.nontagged.AqlCleanJSONPrinterFactoryProvider;
+import org.apache.asterix.formats.nontagged.AqlLosslessJSONPrinterFactoryProvider;
import org.apache.asterix.formats.nontagged.AqlNormalizedKeyComputerFactoryProvider;
import org.apache.asterix.formats.nontagged.AqlPredicateEvaluatorFactoryProvider;
import org.apache.asterix.formats.nontagged.AqlADMPrinterFactoryProvider;
@@ -1058,8 +1059,13 @@
}
@Override
- public IPrinterFactoryProvider getJSONPrinterFactoryProvider() {
- return AqlJSONPrinterFactoryProvider.INSTANCE;
+ public IPrinterFactoryProvider getLosslessJSONPrinterFactoryProvider() {
+ return AqlLosslessJSONPrinterFactoryProvider.INSTANCE;
+ }
+
+ @Override
+ public IPrinterFactoryProvider getCleanJSONPrinterFactoryProvider() {
+ return AqlCleanJSONPrinterFactoryProvider.INSTANCE;
}
@Override
diff --git a/asterix-test-framework/src/main/java/org/apache/asterix/testframework/context/TestCaseContext.java b/asterix-test-framework/src/main/java/org/apache/asterix/testframework/context/TestCaseContext.java
index 53ba3c9..b78ad10 100644
--- a/asterix-test-framework/src/main/java/org/apache/asterix/testframework/context/TestCaseContext.java
+++ b/asterix-test-framework/src/main/java/org/apache/asterix/testframework/context/TestCaseContext.java
@@ -39,7 +39,8 @@
public enum OutputFormat {
NONE ("", ""),
ADM ("adm", "application/x-adm"),
- JSON ("json", "application/json"),
+ LOSSLESS_JSON("json", "application/json; lossless=true"),
+ CLEAN_JSON ("json", "application/json"),
CSV ("csv", "text/csv"),
CSV_HEADER ("csv-header", "text/csv; header=present");
@@ -63,8 +64,10 @@
switch (cUnit.getOutputDir().getCompare()) {
case TEXT:
return OutputFormat.ADM;
- case JSON:
- return OutputFormat.JSON;
+ case LOSSLESS_JSON:
+ return OutputFormat.LOSSLESS_JSON;
+ case CLEAN_JSON:
+ return OutputFormat.CLEAN_JSON;
case CSV:
return OutputFormat.CSV;
case CSV_HEADER:
diff --git a/asterix-test-framework/src/main/resources/Catalog.xsd b/asterix-test-framework/src/main/resources/Catalog.xsd
index 771c216..c54ff61 100644
--- a/asterix-test-framework/src/main/resources/Catalog.xsd
+++ b/asterix-test-framework/src/main/resources/Catalog.xsd
@@ -186,7 +186,8 @@
<xs:enumeration value="Text"/>
<xs:enumeration value="Inspect"/>
<xs:enumeration value="Ignore"/>
- <xs:enumeration value="JSON"/>
+ <xs:enumeration value="Clean-JSON"/>
+ <xs:enumeration value="Lossless-JSON"/>
<xs:enumeration value="CSV"/>
<xs:enumeration value="CSV_Header"/>
</xs:restriction>
@@ -217,5 +218,5 @@
<xs:pattern value="\*|([A-Z]{4}[0-9]{4})"/>
</xs:restriction>
</xs:simpleType>
-
+
</xs:schema>