public static LinkedHashMap<String, HiveTypeInfo> getColumnNameType(Record metadataRecord) throws HiveStageCheckedException {
    """
	Extract column information from the column list in "/columns" field.<br>
	
	Column Type Information should exist in this form: <br>
	[{name:"column1", typeInfo:{"type": "string", "extraInfo": ""},
	{name:"column2", typeInfo:{"type": "int", "extraInfo": ""}]
	
	@param metadataRecord record which contains the {@link #COLUMNS_FIELD} and conform to the above structure.
	@return Map of column name to column type
	@throws HiveStageCheckedException if no column information exists or the record has invalid fields.
    """
    LinkedHashMap<String, HiveTypeInfo> columnNameType = new LinkedHashMap<>();
    extractInnerMapFromTheList(
        metadataRecord,
        COLUMNS_FIELD,
        COLUMN_NAME,
        TYPE_INFO,
        true,
        columnNameType,
        new HiveStageCheckedException(Errors.HIVE_17, COLUMNS_FIELD, metadataRecord)
    );
    return columnNameType;
  }
public static LinkedHashMap<String, HiveTypeInfo> getColumnNameType(Record metadataRecord) throws HiveStageCheckedException {
    LinkedHashMap<String, HiveTypeInfo> columnNameType = new LinkedHashMap<>();
    extractInnerMapFromTheList(
        metadataRecord,
        COLUMNS_FIELD,
        COLUMN_NAME,
        TYPE_INFO,
        true,
        columnNameType,
        new HiveStageCheckedException(Errors.HIVE_17, COLUMNS_FIELD, metadataRecord)
    );
    return columnNameType;
  }
public static LinkedHashMap < String , HiveTypeInfo > getColumnNameType ( Record metadataRecord ) throws HiveStageCheckedException { LinkedHashMap < String , HiveTypeInfo > columnNameType = new LinkedHashMap <> ( ) ; extractInnerMapFromTheList ( metadataRecord , COLUMNS_FIELD , COLUMN_NAME , TYPE_INFO , true , columnNameType , new HiveStageCheckedException ( Errors . HIVE_17 , COLUMNS_FIELD , metadataRecord ) ) ; return columnNameType ; }
Extract column information from the column list in "/columns" field.<br>

Column Type Information should exist in this form: <br>
[{name:"column1", typeInfo:{"type": "string", "extraInfo": ""},
{name:"column2", typeInfo:{"type": "int", "extraInfo": ""}]

@param metadataRecord record which contains the {@link #COLUMNS_FIELD} and conform to the above structure.
@return Map of column name to column type
@throws HiveStageCheckedException if no column information exists or the record has invalid fields.
Extract column information from the column list in / columns field . <br >