Rabbit Remote Control
0.1.0-bate14
Toggle main menu visibility
Loading...
Searching...
No Matches
Plugins
SftpServer
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
10
static
Q_LOGGING_CATEGORY(log,
"Operate.SftpServer"
)
11
COperateSftpServer
::
COperateSftpServer
(
CPlugin
*plugin)
12
:
COperateServer
(plugin)
13
, m_pPara(
nullptr
)
14
{
15
qDebug(log) << Q_FUNC_INFO;
16
}
17
18
COperateSftpServer::~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
30
CParameterSftpServer
*
COperateSftpServer::GetParameter
()
const
31
{
32
return
m_pPara;
33
}
34
35
const
QString
COperateSftpServer::Name
()
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;
48
CSecurityLevel
sl(
GetSecurityLevel
());
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
59
const
QString
COperateSftpServer::Description
()
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
77
CSecurityLevel
sl(
GetSecurityLevel
());
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
91
const
qint16 COperateSftpServer::Version()
const
92
{
93
return
0;
94
}
95
96
CBackend
*
COperateSftpServer::InstanceBackend
()
97
{
98
return
new
CBackendSftpServer
(
this
);
99
}
100
101
int
COperateSftpServer::SetPluginParameters
(
CParameterPlugin
*pPara)
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
112
QDialog *
COperateSftpServer::OnOpenDialogSettings
(QWidget *parent)
113
{
114
return
new
CDlgSettingsSftpServer
(m_pPara, parent);
115
}
116
117
int
COperateSftpServer::Load
(QSettings &set)
118
{
119
int
nRet = 0;
120
if
(m_pPara)
121
nRet = m_pPara->Load(set);
122
return
nRet;
123
}
124
125
int
COperateSftpServer::Save
(QSettings &set)
126
{
127
int
nRet = 0;
128
if
(m_pPara)
129
nRet = m_pPara->Save(set);
130
return
nRet;
131
}
132
133
int
COperateSftpServer::Initial
()
134
{
135
int
nRet = 0;
136
nRet =
COperateServer::Initial
();
137
if
(nRet)
return
nRet;
138
139
m_pPara =
new
CParameterSftpServer
();
140
141
return
nRet;
142
}
143
144
int
COperateSftpServer::Clean
()
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
}
CBackendSftpServer
The CBackendSftpServer class.
Definition
BackendSftpServer.h:19
CBackend
Backend interface.
Definition
Backend.h:52
CDlgSettingsSftpServer
Definition
DlgSettingsSftpServer.h:15
COperateServer
Server operate interface.
Definition
OperateServer.h:39
COperateServer::Initial
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource.
Definition
OperateServer.cpp:29
COperateServer::Clean
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource.
Definition
OperateServer.cpp:55
COperateSftpServer
Definition
OperateSftpServer.h:10
COperateSftpServer::SetPluginParameters
virtual int SetPluginParameters(CParameterPlugin *pPara) override
Apply the parameters of the plug-in.
Definition
OperateSftpServer.cpp:101
COperateSftpServer::Name
virtual const QString Name() override
Name.
Definition
OperateSftpServer.cpp:35
COperateSftpServer::Load
virtual int Load(QSettings &set) override
Load parameters.
Definition
OperateSftpServer.cpp:117
COperateSftpServer::GetParameter
virtual CParameterSftpServer * GetParameter() const
Get parameter.
Definition
OperateSftpServer.cpp:30
COperateSftpServer::OnOpenDialogSettings
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
Open settgins dialog.
Definition
OperateSftpServer.cpp:112
COperateSftpServer::Save
virtual int Save(QSettings &set) override
Save parameters.
Definition
OperateSftpServer.cpp:125
COperateSftpServer::Initial
virtual int Initial() override
Initial parameters and resource.
Definition
OperateSftpServer.cpp:133
COperateSftpServer::InstanceBackend
virtual Q_INVOKABLE CBackend * InstanceBackend()
New CBackend.
Definition
OperateSftpServer.cpp:96
COperateSftpServer::Clean
virtual int Clean() override
Clean parameters and resource.
Definition
OperateSftpServer.cpp:144
COperateSftpServer::Description
virtual const QString Description() override
Description.
Definition
OperateSftpServer.cpp:59
COperate::GetSecurityLevel
virtual CSecurityLevel::Levels GetSecurityLevel() const
Get Security Level.
Definition
Operate.cpp:129
COperate::GetPlugin
Q_INVOKABLE CPlugin * GetPlugin() const
Get plugin.
Definition
Operate.cpp:221
COperate::Name
virtual const QString Name()
Name.
Definition
Operate.cpp:46
CParameterPlugin
Global parameters of plugins.
Definition
ParameterPlugin.h:36
CParameterSftpServer
Definition
ParameterSftpServer.h:8
CPlugin
Plugin interface.
Definition
Plugin.h:15
CPlugin::DisplayName
virtual const QString DisplayName() const
The plugin display name.
Definition
Plugin.cpp:76
CPlugin::Description
virtual const QString Description() const =0
Plugin description.
CSecurityLevel
Security level.
Definition
Stats.h:97
Author: Kang Lin (kl222@126.com)
Copyright (c) Kang Lin Studios All Rights Reserved