private String getChildField(int rowNum, String srcFieldName) {
        if (this.childRoot == null || this.childDesc == null) {
            return "";
        }
        List<PbNode> childNodes = this.columnNodeMap.get(srcFieldName);
        if (childNodes == null) {
            String fieldName = srcFieldName.substring(CHILD_KEY.length());
            childNodes = PbNode.parseNodePath(childDesc, fieldName);
            if (childNodes == null) {
                childNodes = new ArrayList<>();
            }
            this.columnNodeMap.put(srcFieldName, childNodes);
        }
        // error config
        if (childNodes.size() == 0) {
            return "";
        }
        // parse other node
        DynamicMessage child = childRoot.get(rowNum);
        String fieldValue = this.getNodeValue(childNodes, child);
        return fieldValue;
    }
getChildField
@param rowNum
@param srcFieldName
@return
inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/decode/PbSourceData.java