Rabbit Remote Control 0.1.0-bate10
Loading...
Searching...
No Matches
OperateSftpServer.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include <QLoggingCategory>
4#include "Plugin.h"
5#include "BackendSftpServer.h"
6#include "ParameterSftpServer.h"
7#include "DlgSettingsSftpServer.h"
8#include "OperateSftpServer.h"
9
10static Q_LOGGING_CATEGORY(log, "Operate.SftpServer")
12 : COperateServer(plugin)
13 , m_pPara(nullptr)
14{
15 qDebug(log) << Q_FUNC_INFO;
16}
17
18COperateSftpServer::~COperateSftpServer()
19{
20 qDebug(log) << Q_FUNC_INFO;
21 QString szClass = this->metaObject()->className();
22 QString szWhat;
23 szWhat += "Please call ";
24 szWhat += szClass;
25 szWhat += "::Stop() first";
26 Q_ASSERT_X(!m_pPara, szClass.toStdString().c_str(), szWhat.toStdString().c_str());
27
28}
29
31{
32 return m_pPara;
33}
34
36{
37 QString szName;
38 // Show the name of parameter
39 if(GetParameter() && !(GetParameter()->GetName().isEmpty()))
40 szName += GetParameter()->GetName();
41 else {
42 // Show the name
43 szName += COperate::Name();
44 }
45
46 // Show the prefix of security level
47 QString szSecurityLevel;
49 if(GetParameter() && GetParameter()->GetPluginParameters()
50 && (GetParameter()->GetPluginParameters()->GetNameStyles()
51 & CParameterPlugin::NameStyle::SecurityLevel)
52 && !(GetSecurityLevel() & CSecurityLevel::Level::No)
53 && !sl.GetUnicodeIcon().isEmpty())
54 szSecurityLevel = sl.GetUnicodeIcon().left(2);
55
56 return szSecurityLevel + szName;
57}
58
60{
61 QString szDescription;
62 if(!Name().isEmpty())
63 szDescription = tr("Name: ") + Name() + "\n";
64
65 if(!GetTypeName().isEmpty())
66 szDescription += tr("Type: ") + GetTypeName() + "\n";
67
68 if(!Protocol().isEmpty()) {
69 szDescription += tr("Protocol: ") + Protocol();
70#ifdef DEBUG
71 if(!GetPlugin()->DisplayName().isEmpty())
72 szDescription += " - " + GetPlugin()->DisplayName();
73#endif
74 szDescription += "\n";
75 }
76
78 if(!(GetSecurityLevel() & CSecurityLevel::Level::No)) {
79 szDescription += tr("Security level: ");
80 if(!sl.GetUnicodeIcon().isEmpty())
81 szDescription += sl.GetUnicodeIcon() + " ";
82 szDescription += sl.GetString() + "\n";
83 }
84
85 if(!GetPlugin()->Description().isEmpty())
86 szDescription += tr("Description: ") + GetPlugin()->Description();
87
88 return szDescription;
89}
90
91const qint16 COperateSftpServer::Version() const
92{
93 return 0;
94}
95
100
102{
103 int nRet = 0;
104 if(m_pPara) {
105 m_pPara->SetPluginParameters(pPara);
106 m_pPara->m_Net.m_User.SetSavePassword(true);
107 m_pPara->m_Net.m_User.SetSavePassphrase(true);
108 }
109 return nRet;
110}
111
113{
114 return new CDlgSettingsSftpServer(m_pPara, parent);
115}
116
117int COperateSftpServer::Load(QSettings &set)
118{
119 int nRet = 0;
120 if(m_pPara)
121 nRet = m_pPara->Load(set);
122 return nRet;
123}
124
125int COperateSftpServer::Save(QSettings &set)
126{
127 int nRet = 0;
128 if(m_pPara)
129 nRet = m_pPara->Save(set);
130 return nRet;
131}
132
134{
135 int nRet = 0;
137 if(nRet) return nRet;
138
139 m_pPara = new CParameterSftpServer();
140
141 return nRet;
142}
143
145{
146 int nRet = 0;
147 if(m_pPara) {
148 delete m_pPara;
149 m_pPara = nullptr;
150 }
151 nRet = COperateServer::Clean();
152 return nRet;
153}
The CBackendSftpServer class.
Backend interface.
Definition Backend.h:42
Server operate interface.
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource.
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource.
virtual int SetPluginParameters(CParameterPlugin *pPara) override
Apply the parameters of the plug-in.
virtual const QString Name() override
Name.
virtual int Load(QSettings &set) override
Load parameters.
virtual CParameterSftpServer * GetParameter() const
Get parameter.
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
Open settgins dialog.
virtual int Save(QSettings &set) override
Save parameters.
virtual int Initial() override
Initial parameters and resource.
virtual Q_INVOKABLE CBackend * InstanceBackend()
New CBackend.
virtual int Clean() override
Clean parameters and resource.
virtual const QString Description() override
Description.
virtual CSecurityLevel::Levels GetSecurityLevel() const
Get Security Level.
Definition Operate.cpp:129
Q_INVOKABLE CPlugin * GetPlugin() const
Get plugin.
Definition Operate.cpp:221
virtual const QString Name()
Name.
Definition Operate.cpp:46
CParameterUser m_User
[Instance user]
Global parameters of plugins.
void SetSavePassword(bool save)
Set save password.
virtual int Save(QString szFile=QString(), bool bForce=true)
Save to file.
Definition Parameter.cpp:47
virtual int Load(QString szFile=QString())
Load from file.
Definition Parameter.cpp:35
Plugin interface.
Definition Plugin.h:15
virtual const QString DisplayName() const
The plugin display name.
Definition Plugin.cpp:76
virtual const QString Description() const =0
Plugin description.
Security level.
Definition Stats.h:97