public function protect()
	{
		if (!$this->isUnprotected())
		{
			return;
		}

		// Check if the .public file exists
		if (!file_exists($this->strRootDir . '/' . $this->strFolder . '/.public'))
		{
			throw new \RuntimeException(sprintf('Cannot protect folder "%s" because one of its parent folders is public', $this->strFolder));
		}

		(new File($this->strFolder . '/.public'))->delete();
	}