DotNameLib
Loading...
Searching...
No Matches
IDirectoryManager.hpp
Go to the documentation of this file.
1#pragma once
2
4#include <filesystem>
5#include <vector>
6
7namespace dotnamecpp::utils {
8
15 public:
16 virtual ~IDirectoryManager() = default;
17
24 [[nodiscard]]
25 virtual Result<void, FileError> createDirectory(const std::filesystem::path &dirPath) const = 0;
26
33 [[nodiscard]]
34 virtual Result<void, FileError> removeDirectory(const std::filesystem::path &dirPath) const = 0;
35
42 [[nodiscard]]
44 removeDirectoryRecursive(const std::filesystem::path &dirPath) const = 0;
45
53 [[nodiscard]]
54 virtual bool exists(const std::filesystem::path &dirPath) const = 0;
55
62 [[nodiscard]]
63 virtual Result<bool, FileError> isEmpty(const std::filesystem::path &dirPath) const = 0;
64
71 [[nodiscard]]
73 listEntries(const std::filesystem::path &dirPath) const = 0;
74
81 [[nodiscard]]
83 listEntriesRecursive(const std::filesystem::path &dirPath) const = 0;
84
90 [[nodiscard]]
92
98 [[nodiscard]]
100 };
101
102} // namespace dotnamecpp::utils
Interface for directory operations.
Definition IDirectoryManager.hpp:14
virtual Result< std::uintmax_t, FileError > removeDirectoryRecursive(const std::filesystem::path &dirPath) const =0
Remove a Directory object recursively.
virtual Result< bool, FileError > isEmpty(const std::filesystem::path &dirPath) const =0
Check if a directory is empty.
virtual bool exists(const std::filesystem::path &dirPath) const =0
Check if a directory exists.
virtual Result< std::vector< std::filesystem::path >, FileError > listEntriesRecursive(const std::filesystem::path &dirPath) const =0
List entries in a directory recursively.
virtual Result< std::filesystem::path, FileError > getTempDirectory() const =0
Get the Temp Directory object.
virtual Result< void, FileError > removeDirectory(const std::filesystem::path &dirPath) const =0
Remove a Directory object.
virtual Result< std::vector< std::filesystem::path >, FileError > listEntries(const std::filesystem::path &dirPath) const =0
List entries in a directory.
virtual Result< void, FileError > createDirectory(const std::filesystem::path &dirPath) const =0
Create a Directory object.
virtual Result< std::filesystem::path, FileError > getCurrentDirectory() const =0
Get the Current Directory object.
Definition UtilsError.hpp:93
Definition DirectoryManager.cpp:5
Definition UtilsError.hpp:35