public function resetRegistry()
    {
        $aRegKeys = \OxidEsales\Eshop\Core\Registry::getKeys();

        $aSkippedClasses = array();

        foreach ($aRegKeys as $sKey) {
            if (!in_array($sKey, $aSkippedClasses)) {
                $oInstance = null;
                if (!isset($this->registryCache[$sKey])) {
                    try {
                        $oNewInstance = oxNew($sKey);
                        $this->registryCache[$sKey] = $oNewInstance;
                    } catch (\OxidEsales\Eshop\Core\Exception\SystemComponentException $oException) {
                        \OxidEsales\Eshop\Core\Registry::set($sKey, null);
                        continue;
                    }
                }
                $oInstance = clone $this->registryCache[$sKey];
                \OxidEsales\Eshop\Core\Registry::set($sKey, $oInstance);
            }
        }
    }