private function doChecks(array $checkList)
    {
        $retValue = array();
        if (empty($checkList)) {
            $retValue[] = new CheckOutcome('message.nochecks', array(), CheckOutcome::NOTICE);

            return $retValue;
        }

        /** @var CheckInterface $check */
        foreach ($checkList as $check) {
            try {
                $retValue = array_merge($retValue, $check->performCheck());
            } catch (\Exception $e) {
                $retValue[] = new CheckOutcome(
                    'message.exception',
                    array('%0%' => $e->getMessage()),
                    CheckOutcome::EXCEPTION
                );
            }
        }
        if (empty($retValue)) {
            $retValue[] = new CheckOutcome('message.nooutcome', array(), CheckOutcome::NOTICE);
        }

        return $retValue;
    }