public final void buildSheet ( final Sheet sheet , final Map < String , SheetConfiguration > sheetConfigMap , final CellAttributesMap cellAttributesMap ) { if ( ( sheet . getLastRowNum ( ) <= 0 ) && ( sheet . getRow ( 0 ) == null ) ) { // this is a empty sheet. skip it. return ; } checkAndRepairLastRow ( sheet ) ; int sheetRightCol = WebSheetUtility . getSheetRightCol ( sheet ) ; List < ConfigCommand > commandList = buildCommandListFromSheetComment ( ( XSSFSheet ) sheet , sheetRightCol , cellAttributesMap ) ; boolean hasEachCommand = hasEachCommandInTheList ( commandList ) ; List < String > formList = new ArrayList <> ( ) ; buildSheetConfigMapFromFormCommand ( sheet , sheetConfigMap , commandList , formList , sheetRightCol ) ; // match parent command matchParentCommand ( commandList ) ; // setup save attrs in hidden column in the sheet. // loop command list again to assemble other command list into sheet // configuration matchSheetConfigForm ( sheetConfigMap , commandList , formList ) ; initTemplateForCommand ( sheet , sheetConfigMap , formList , hasEachCommand ) ; }
build a sheet for configuration map .