source: src-qt4/life-preserver/LPBackend.h @ 845aaf6

9.2-releasereleng/10.0releng/10.0.1releng/10.0.2releng/10.0.3
Last change on this file since 845aaf6 was 845aaf6, checked in by Ken Moore <ken@…>, 13 months ago

Setup the new snapshot process as an external process and update the message appropriately. Also make sure that we parse every single line in the log, just to make sure that we don't miss an important message (keep it quiet during the initial startup phase though).

  • Property mode set to 100644
File size: 2.1 KB
Line 
1#ifndef _LP_BACKEND_H
2#define _LP_BACKEND_H
3
4#include <QProcess>
5#include <QString>
6#include <QStringList>
7#include <QDebug>
8#include <QDir>
9#include <QCoreApplication>
10
11//Class of static functions for using the "lpreserver" backend
12class LPBackend{
13
14public: 
15        //Informational
16        static QStringList listPossibleDatasets(); //list all possible datasets on the system
17        static QStringList listDatasets(); //list all current lifepreserver datasets
18        static QStringList listDatasetSubsets(QString dataset); //list all subsets of the main dataset
19        static QStringList listSnapshots(QString dsmountpoint); //list all snapshots for a particular dataset mountpoint
20        static QStringList listLPSnapshots(QString dataset); //list all snapshots created by life preserver
21        static QStringList listReplicationTargets(); //list all datasets with replication enabled
22        static QStringList listCurrentStatus(); //list the current snapshot/replication status
23        //Dataset Management
24        static bool setupDataset(QString dataset, int time, int numToKeep); //add or configure dataset
25        static bool removeDataset(QString dataset);
26        static bool datasetInfo(QString dataset, int& time, int& numToKeep); //get current settings for a dataset
27        //Snapshop Management
28        static void newSnapshot(QString dataset, QString snapshotname);
29        static bool removeSnapshot(QString dataset, QString snapshot);
30        static bool revertSnapshot(QString dataset, QString snapshot); //revert to given snapshot
31        static QString revertSnapshotFile(QString dataset, QString snapshot, QString filepath);
32        //Replication Management
33        static bool setupReplication(QString dataset, QString remotehost, QString user, int port, QString remotedataset, int time);
34        static bool removeReplication(QString dataset);
35        static bool replicationInfo(QString dataset, QString& remotehost, QString& user, int& port, QString& remotedataset, int& time);
36        //SSH Key Management
37        static bool setupSSHKey(QString remoteHost, QString remoteUser, int remotePort);
38        static QStringList findValidUSBDevices();
39        static bool copySSHKey(QString mountPath, QString localHost);
40       
41private:
42        static QStringList getCmdOutput(QString);
43        static int runCmd(QString);
44};
45#endif
Note: See TracBrowser for help on using the repository browser.