private function _checkCache(\stdClass $oCache)
    {
        /**
         * cache-control http
         */

        $sHearderValidity = false;
        $sHeader = "Cache-Control:";

        if (isset($oCache->visibility) && ($oCache->visibility = 'public' || $oCache->visibility = 'private')) {

            $sHearderValidity = true;
            $sHeader .= " ".$oCache->visibility.",";
        }

        if (isset($oCache->max_age)) {

            $sHearderValidity = true;
            $sHeader .= " maxage=".$oCache->max_age.",";
        }

        if (isset($oCache->must_revalidate) && $oCache->must_revalidate === true) {

            $sHearderValidity = true;
            $sHeader .= " must-revalidate,";
        }

        if ($sHearderValidity === true) {

            $sHeader = substr($sHeader, 0, -1);

            if (!headers_sent()) { header($sHeader); }
        }

        /**
         * ETag http
         */

        if (isset($oCache->ETag)) { header("ETag: \"".$oCache->ETag."\""); }

        /**
         * expire
         */

        if (isset($oCache->max_age)) { if (!headers_sent()) { header('Expires: '.gmdate('D, d M Y H:i:s', time() + $oCache->max_age).' GMT'); } }

        /**
         * Last-Modified http
         */

        if (isset($oCache->last_modified)) { if (!headers_sent()) { header('Last-Modified: '.gmdate('D, d M Y H:i:s', time() + $oCache->last_modified).' GMT'); } }

        /**
         * vary http
         */

        if (isset($oCache->vary)) { header('Vary: '.$oCache->vary); }
    }