Guitar
GitBasicSession.h
Go to the documentation of this file.
1 #ifndef GITBASICSESSION_H
2 #define GITBASICSESSION_H
3 
4 #include "AbstractGitSession.h"
5 #include <QString>
6 
8 public:
9  struct Commands {
10  QString git_command;
11  QString ssh_command;
12  };
13 private:
14  QString gitCommand() const;
15  QString sshCommand() const;
16 protected:
17  virtual std::shared_ptr<AbstractGitSession> dup();
18 public:
19  GitBasicSession(Commands const &cmds);
20 
21  bool is_connected() const;
22  bool isValidWorkingCopy(QString const &dir) const;
23  std::optional<GitResult> exec_git(QString const &arg, Option const &opt);
24  bool remove(const QString &path);
25 
26  virtual std::optional<std::vector<GitFileItem>> ls(char const *path);
27  virtual std::optional<std::vector<char>> readfile(char const *path);
28 };
29 
30 #endif // GITBASICSESSION_H
Definition: AbstractGitSession.h:14
Definition: GitBasicSession.h:7
bool remove(const QString &path)
Definition: GitBasicSession.cpp:134
bool isValidWorkingCopy(QString const &dir) const
Definition: Git.cpp:119
std::optional< GitResult > exec_git(QString const &arg, Option const &opt)
Definition: GitBasicSession.cpp:40
bool is_connected() const
Definition: GitBasicSession.cpp:35
QString sshCommand() const
Definition: GitBasicSession.cpp:22
virtual std::optional< std::vector< GitFileItem > > ls(char const *path)
Definition: GitBasicSession.cpp:144
QString gitCommand() const
Definition: GitBasicSession.cpp:17
virtual std::shared_ptr< AbstractGitSession > dup()
Definition: GitBasicSession.cpp:27
virtual std::optional< std::vector< char > > readfile(char const *path)
Definition: GitBasicSession.cpp:158
GitBasicSession(Commands const &cmds)
Definition: GitBasicSession.cpp:11
Definition: AbstractGitSession.h:17
Definition: GitBasicSession.h:9
QString git_command
Definition: GitBasicSession.h:10
QString ssh_command
Definition: GitBasicSession.h:11