public static Message rowToMessage()

in java/core/src/main/java/com/aliyun/openservices/tablestore/agent/util/TablestoreHelper.java [338:369]


    public static Message rowToMessage(Row row) {
        if (row == null) {
            return null;
        }
        PrimaryKey primaryKey = row.getPrimaryKey();
        String sessionId = primaryKey.getPrimaryKeyColumn(0).getValue().asString();
        Reference<String> content = new Reference<>();
        String messageId;
        long createTime;
        PrimaryKeyColumn primaryKey1 = primaryKey.getPrimaryKeyColumn(1);
        if (primaryKey1.getValue().getType().equals(PrimaryKeyType.STRING)) {
            messageId = primaryKey1.getValue().asString();
            createTime = primaryKey.getPrimaryKeyColumn(2).getValue().asLong();
        } else {
            createTime = primaryKey1.getValue().asLong();
            messageId = primaryKey.getPrimaryKeyColumn(2).getValue().asString();
        }
        Column[] columns = row.getColumns();
        Metadata metadata = columnsToMetadata(columns, (column -> {
            String name = column.getName();
            ColumnValue value = column.getValue();
            if (Message.MESSAGE_CONTENT.equals(name)) {
                content.set(value.asString());
                return true;
            }
            return false;
        }));
        Message message = new Message(sessionId, messageId, createTime);
        message.setContent(content.get());
        message.setMetadata(metadata);
        return message;
    }