protected function deletePhysicalFile()
{
$fsPath = $this->getFileSystemPath();
if ($this->getType() != "folder") {
if (is_file($fsPath) && is_writable($fsPath)) {
unlink($fsPath);
}
} else {
if (is_dir($fsPath) && is_writable($fsPath)) {
recursiveDelete($fsPath, true);
}
}
}