MCPcopy Create free account
hub / github.com/FreesmTeam/FreesmLauncher / create_link

Class create_link

launcher/FileSystem.h:198–279  ·  view source on GitHub ↗

* @brief links (a file / a directory and it's contents) from src to dest */

Source from the content-addressed store, hash-verified

196 * @brief links (a file / a directory and it's contents) from src to dest
197 */
198class create_link : public QObject {
199 Q_OBJECT
200 public:
201 create_link(const QList<LinkPair> path_pairs, QObject* parent = nullptr) : QObject(parent) { m_path_pairs.append(path_pairs); }
202 create_link(const QString& src, const QString& dst, QObject* parent = nullptr) : QObject(parent)
203 {
204 LinkPair pair = { src, dst };
205 m_path_pairs.append(pair);
206 }
207 create_link& useHardLinks(const bool useHard)
208 {
209 m_useHardLinks = useHard;
210 return *this;
211 }
212 create_link& matcher(const IPathMatcher* filter)
213 {
214 m_matcher = filter;
215 return *this;
216 }
217 create_link& whitelist(bool whitelist)
218 {
219 m_whitelist = whitelist;
220 return *this;
221 }
222 create_link& linkRecursively(bool recursive)
223 {
224 m_recursive = recursive;
225 return *this;
226 }
227 create_link& setMaxDepth(int depth)
228 {
229 m_max_depth = depth;
230 return *this;
231 }
232 create_link& debug(bool d)
233 {
234 m_debug = d;
235 return *this;
236 }
237
238 std::error_code getOSError() { return m_os_err; }
239
240 bool operator()(bool dryRun = false) { return operator()(QString(), dryRun); }
241
242 int totalLinked() { return m_linked; }
243 int totalToLink() { return static_cast<int>(m_links_to_make.size()); }
244
245 void runPrivileged() { runPrivileged(QString()); }
246 void runPrivileged(const QString& offset);
247
248 QList<LinkResult> getResults() { return m_path_results; }
249
250 signals:
251 void fileLinked(const QString& srcName, const QString& dstName);
252 void linkFailed(const QString& srcName, const QString& dstName, const QString& err_msg, int err_value);
253 void finished();
254 void finishedPrivileged(bool gotResults);
255

Callers 1

extractMethod · 0.85

Calls 2

QObjectClass · 0.85
appendMethod · 0.80

Tested by

no test coverage detected