@Override public Object getDataBasedOnColumn(ByteBuffer dataBuffer, CarbonDimension parent, CarbonDimension child) { Object actualData; if (parent.getOrdinal() != child.getOrdinal() || null == dataBuffer || !dataBuffer .hasRemaining()) { return null; } int size; if (!DataTypeUtil.isFixedSizeDataType(child.getDataType())) { size = dataBuffer.array().length; } else if (child.getDataType() == DataTypes.TIMESTAMP) { size = DataTypes.LONG.getSizeInBytes(); } else { size = child.getDataType().getSizeInBytes(); } actualData = getDataObject(dataBuffer, size); return actualData; }