function printCriticalitySummary()

in rule-count.php [119:185]


function printCriticalitySummary($reporterJsons){
    $ts = 0;
    $total = [
        'I' => 0,
        'L' => 0,
        'M' => 0,
        'H' => 0
    ];
    
    $critcalityTable = new LucidFrame\Console\ConsoleTable();
    $critcalityTable->addHeader('Service');
    
    foreach(CRITICALITY as $criticality => $v)
        $critcalityTable->addHeader(addPad($criticality, '_', STR_PAD_BOTH));
    
    $critcalityTable->addHeader(addPad('TOTAL', '_', STR_PAD_BOTH));
    
    foreach($reporterJsons as $service => $jsonPath){
        $criticalitySumm = criticalitySummary($jsonPath);
        
        $critcalityTable->addRow();
        $critcalityTable->addColumn($service);
        
        
        foreach(CRITICALITY as $code => $desc){
            if(isset($criticalitySumm[$code])){
                $critcalityTable->addColumn(addPad($criticalitySumm[$code]));
            }else{
                $critcalityTable->addColumn( ' / ');
            }
        }
        
        $s = array_sum($criticalitySumm);
        $ts += $s;
        $critcalityTable->addColumn(addPad($s));
        
        foreach($criticalitySumm as $k => $v){
            $total[$k] += $v;   
        }
    }
    
    $totalServ = sizeof($reporterJsons);
    
    $critcalityTable->addRow();
    $critcalityTable->addColumn('--------');
    $critcalityTable->addRow();
    $critcalityTable->addColumn('Total');
    foreach(CRITICALITY as $code => $desc){
            $critcalityTable->addColumn( addPad($total[$code]));
    }
    
    $critcalityTable->addColumn( addPad($ts));
    
    $critcalityTable->addRow();
    $critcalityTable->addColumn('Mean');
    foreach(CRITICALITY as $code => $desc){
        $critcalityTable->addColumn( addPad(round($total[$code] / $totalServ, 2)));
    }
    
    $critcalityTable->addColumn( addPad(round($ts / $totalServ, 2)));
    
    echo "Service Rules Criticality Count:";
    echo "\n";
    $critcalityTable->display();
    
    return;
}