public function copyToDirectory(string $newDirectoryPath): self
    {
        $newDirectoryPath = normalize_path($newDirectoryPath);

        if (is_dir($newDirectoryPath)) {
            if (is_writeable($newDirectoryPath)) {
                $newFolderPath = $newDirectoryPath.DIRECTORY_SEPARATOR.$this->getName();
                $this->copy($newFolderPath);
            }
            throw new FolderException('Cannot copy the folder, because the new directory path ('.$newDirectoryPath.') is not writable',
                FolderException::NOT_WRITEABLE);
        }
        throw new FolderException('Cannot copy the folder, because the new directory path ('.$newDirectoryPath.') does not exist',
            FolderException::DONT_EXIST);
    }