returns overall percent complete , calculated by aggregating percent complete of all phases . this is an approximation that assumes all phases have equal running time . in practice , this is n't true , but there is n't sufficient information available to predict proportional weights for each phase . concode_field_sep Map<Phase,PhaseTracking> phases concode_field_sep long getSize concode_elem_sep Iterable<Phase> getPhases concode_elem_sep float getBoundedPercent concode_elem_sep StepTracking getStepTracking concode_elem_sep Iterable<Step> getSteps concode_elem_sep long getTotal concode_elem_sep long getTotal concode_elem_sep Status getStatus concode_elem_sep long getCount concode_elem_sep long getCount concode_elem_sep String getFile concode_elem_sep long getElapsedTime concode_elem_sep long getElapsedTime concode_elem_sep long getElapsedTime concode_elem_sep long getElapsedTime concode_elem_sep long getElapsedTime
float function ( ) { if ( getStatus ( Phase . SAFEMODE ) == Status . COMPLETE ) { return 1.0f ; } else { float loc0 = 0.0f ; int loc1 = 0 ; for ( Phase loc2 : phases . keySet ( ) ) { ++ loc1 ; loc0 += getPercentComplete ( loc2 ) ; } return getBoundedPercent ( loc0 / loc1 ) ; } }