protected void writeBlockletInfoToFile(List<BlockletInfoColumnar> infoList,FileChannel channel,String filePath) throws CarbonDataWriterException {
  try {
    long currentPosition=channel.size();
    CarbonFooterWriter writer=new CarbonFooterWriter(filePath);
    FileFooter convertFileMeta=CarbonMetadataUtil.convertFileFooter(infoList,localCardinality.length,localCardinality,thriftColumnSchemaList,segmentProperties);
    fillBlockIndexInfoDetails(infoList,convertFileMeta.getNum_rows(),filePath,currentPosition);
    writer.writeFooter(convertFileMeta,currentPosition);
  }
 catch (  IOException e) {
    throw new CarbonDataWriterException("Problem while writing the carbon file: ",e);
  }
}

protected void writeBlockletInfoToFile ( List < BlockletInfoColumnar > infoList , FileChannel channel , String filePath ) throws CarbonDataWriterException { try { long currentPosition = channel . size ( ) ; CarbonFooterWriter writer = new CarbonFooterWriter ( filePath ) ; FileFooter convertFileMeta = CarbonMetadataUtil . convertFileFooter ( infoList , localCardinality . length , localCardinality , thriftColumnSchemaList , segmentProperties ) ; fillBlockIndexInfoDetails ( infoList , convertFileMeta . getNum_rows ( ) , filePath , currentPosition ) ; writer . writeFooter ( convertFileMeta , currentPosition ) ; } catch ( IOException e ) { throw new CarbonDataWriterException ( "Problem while writing the carbon file: " , e ) ; } }
this method will write metadata at the end of file file format in thrift format
