public function getRootCategoryStoreViewCodes($path)
    {

        // explode the path of the root category
        list ($rootCategoryPath, ) = explode('/', $path);

        // query whether or not a root category with the given path exists
        if ($rootCategory = $this->getCategoryByPath($rootCategoryPath)) {
            // initialize the array with the store view codes
            $storeViewCodes = array();

            // try to assemble the store view codes by iterating over the available root categories
            foreach ($this->rootCategories as $storeViewCode => $category) {
                // query whether or not the entity ID of the root category matches
                if ((integer) $category[$this->getPrimaryKeyMemberName()] === (integer) $rootCategory[$this->getPrimaryKeyMemberName()]) {
                    $storeViewCodes[] = $storeViewCode;
                }
            }

            // return the array with the store view codes
            return $storeViewCodes;
        }

        // throw an exception, if the root category is NOT available
        throw new \Exception(printf('Can\'t load root category "%s" for path "%s"', $rootCategoryPath, $path));
    }