You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sa...@apache.org on 2017/09/15 11:29:24 UTC
[12/13] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.11
Merge branch 'cassandra-3.0' into cassandra-3.11
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d9a2cc94
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d9a2cc94
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d9a2cc94
Branch: refs/heads/trunk
Commit: d9a2cc947fe956b233f6eeed25e819df5a332d3d
Parents: 28b75ba 45218f9
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Sep 15 12:22:34 2017 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Sep 15 12:22:34 2017 +0100
----------------------------------------------------------------------
CHANGES.txt | 2 ++
src/java/org/apache/cassandra/cql3/selection/Selection.java | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d9a2cc94/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d9a2cc94/src/java/org/apache/cassandra/cql3/selection/Selection.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/selection/Selection.java
index 428634c,406f849..5e7c6e3
--- a/src/java/org/apache/cassandra/cql3/selection/Selection.java
+++ b/src/java/org/apache/cassandra/cql3/selection/Selection.java
@@@ -259,39 -248,13 +259,39 @@@ public abstract class Selectio
@Override
public String toString()
{
- return Objects.toStringHelper(this)
- .add("columns", columns)
- .add("columnMapping", columnMapping)
- .add("metadata", metadata)
- .add("collectTimestamps", collectTimestamps)
- .add("collectTTLs", collectTTLs)
- .toString();
+ return MoreObjects.toStringHelper(this)
+ .add("columns", columns)
+ .add("columnMapping", columnMapping)
+ .add("metadata", metadata)
+ .add("collectTimestamps", collectTimestamps)
+ .add("collectTTLs", collectTTLs)
+ .toString();
+ }
+
+ public static List<ByteBuffer> rowToJson(List<ByteBuffer> row, ProtocolVersion protocolVersion, ResultSet.ResultMetadata metadata)
+ {
+ StringBuilder sb = new StringBuilder("{");
+ for (int i = 0; i < metadata.names.size(); i++)
+ {
+ if (i > 0)
+ sb.append(", ");
+
+ ColumnSpecification spec = metadata.names.get(i);
+ String columnName = spec.name.toString();
+ if (!columnName.equals(columnName.toLowerCase(Locale.US)))
+ columnName = "\"" + columnName + "\"";
+
+ ByteBuffer buffer = row.get(i);
+ sb.append('"');
+ sb.append(Json.quoteAsJsonString(columnName));
+ sb.append("\": ");
- if (buffer == null)
++ if (buffer == null || !buffer.hasRemaining())
+ sb.append("null");
+ else
+ sb.append(spec.type.toJSONString(buffer, protocolVersion));
+ }
+ sb.append("}");
+ return Collections.singletonList(UTF8Type.instance.getSerializer().serialize(sb.toString()));
}
public class ResultSetBuilder
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org