Github user xubo245 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2792#discussion_r223238343
--- Diff:
core/src/main/java/org/apache/carbondata/core/datastore/row/CarbonRow.java ---
@@ -57,6 +74,154 @@ public String getString(int ordinal) {
return (String) data[ordinal];
}
+ /**
+ * get short type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public short getShort(int ordinal) {
+ return (short) data[ordinal];
+ }
+
+ /**
+ * get int data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public int getInt(int ordinal) {
+ return (Integer) data[ordinal];
+ }
+
+ /**
+ * get long data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public long getLong(int ordinal) {
+ return (long) data[ordinal];
+ }
+
+ /**
+ * get array data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public Object[] getArray(int ordinal) {
+ return (Object[]) data[ordinal];
+ }
+
+ /**
+ * get double data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public double getDouble(int ordinal) {
+ return (double) data[ordinal];
+ }
+
+ /**
+ * get boolean data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public boolean getBoolean(int ordinal) {
+ return (boolean) data[ordinal];
+ }
+
+ /**
+ * get byte data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public Byte getByte(int ordinal) {
+ return (Byte) data[ordinal];
+ }
+
+ /**
+ * get float data type data by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public float getFloat(int ordinal) {
+ return (float) data[ordinal];
+ }
+
+ /**
+ * get varchar data type data by ordinal
+ * This is for CSDK
+ * JNI don't support varchar, so carbon convert decimal to string
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public String getVarchar(int ordinal) {
+ return (String) data[ordinal];
+ }
+
+ /**
+ * get decimal data type data by ordinal
+ * This is for CSDK
+ * JNI don't support Decimal, so carbon convert decimal to string
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public String getDecimal(int ordinal) {
+ return ((BigDecimal) data[ordinal]).toString();
+ }
+
+ /**
+ * get data type by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public DataType getDataType(int ordinal) {
+ return dataTypes[ordinal];
+ }
+
+ /**
+ * get data type name by ordinal
+ *
+ * @param ordinal the data index of carbonRow
+ * @return
+ */
+ public String getDataTypeName(int ordinal) {
+ return dataTypes[ordinal].getName();
+ }
+
+ /**
+ * get element type name by ordinal
+ * child schema data type name
+ * for example: return STRING if it's Array<String> in java
+ *
+ * @param ordinal the data index of carbonRow
+ * @return element type name
+ */
+ public String getElementTypeName(int ordinal) {
--- End diff --
ok, done
---