Rabbit Remote Control 0.1.0-bate10
Loading...
Searching...
No Matches
OperateFtpServer.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include <QLoggingCategory>
4#include "Plugin.h"
5#include "BackendFtpServer.h"
6#include "ParameterFtpServer.h"
7#include "DlgSettingsFtpServer.h"
8#include "OperateFtpServer.h"
9
10static Q_LOGGING_CATEGORY(log, "Operate.FtpServer")
12 : COperateServer(plugin)
13 , m_pPara(nullptr)
14{
15 qDebug(log) << Q_FUNC_INFO;
16}
17
18COperateFtpServer::~COperateFtpServer()
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
30{
31 return m_pPara;
32}
33
35{
36 QString szName;
37 // Show the name of parameter
38 if(GetParameter() && !(GetParameter()->GetName().isEmpty()))
39 szName += GetParameter()->GetName();
40 else {
41 // Show the name
42 szName += COperate::Name();
43 }
44
45 // Show the prefix of security level
46 QString szSecurityLevel;
48 if(GetParameter() && GetParameter()->GetPluginParameters()
49 && (GetParameter()->GetPluginParameters()->GetNameStyles()
50 & CParameterPlugin::NameStyle::SecurityLevel)
51 && !(GetSecurityLevel() & CSecurityLevel::Level::No)
52 && !sl.GetUnicodeIcon().isEmpty())
53 szSecurityLevel = sl.GetUnicodeIcon().left(2);
54
55 return szSecurityLevel + szName;
56}
57
59{
60 QString szDescription;
61 if(!Name().isEmpty())
62 szDescription = tr("Name: ") + Name() + "\n";
63
64 if(!GetTypeName().isEmpty())
65 szDescription += tr("Type: ") + GetTypeName() + "\n";
66
67 if(!Protocol().isEmpty()) {
68 szDescription += tr("Protocol: ") + Protocol();
69#ifdef DEBUG
70 if(!GetPlugin()->DisplayName().isEmpty())
71 szDescription += " - " + GetPlugin()->DisplayName();
72#endif
73 szDescription += "\n";
74 }
75
77 if(!(GetSecurityLevel() & CSecurityLevel::Level::No)) {
78 szDescription += tr("Security level: ");
79 if(!sl.GetUnicodeIcon().isEmpty())
80 szDescription += sl.GetUnicodeIcon() + " ";
81 szDescription += sl.GetString() + "\n";
82 }
83
84 if(!GetPlugin()->Description().isEmpty())
85 szDescription += tr("Description: ") + GetPlugin()->Description();
86
87 return szDescription;
88}
89
90const qint16 COperateFtpServer::Version() const
91{
92 return 0;
93}
94
99
101{
102 int nRet = 0;
103 if(m_pPara) {
104 m_pPara->SetPluginParameters(pPara);
105 m_pPara->m_Net.m_User.SetSavePassword(true);
106 m_pPara->m_Net.m_User.SetSavePassphrase(true);
107 }
108 return nRet;
109}
110
112{
113 return new CDlgSettingsFtpServer(m_pPara, parent);
114}
115
116int COperateFtpServer::Load(QSettings &set)
117{
118 int nRet = 0;
119
120 if(m_pPara)
121 nRet = m_pPara->Load(set);
122
123 return nRet;
124}
125
126int COperateFtpServer::Save(QSettings &set)
127{
128 int nRet = 0;
129 if(m_pPara)
130 nRet = m_pPara->Save(set);
131 return nRet;
132}
133
135{
136 int nRet = 0;
138 if(nRet) return nRet;
139 m_pPara = new CParameterFtpServer();
140
141 return nRet;
142}
143
145{
146 int nRet = 0;
147 // TODO: add Clean
148
149 if(m_pPara) {
150 delete m_pPara;
151 m_pPara = nullptr;
152 }
153 nRet = COperateServer::Clean();
154 return nRet;
155}
Backend interface.
Definition Backend.h:42
virtual const QString Name() override
Name.
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
Open settgins dialog.
virtual int SetPluginParameters(CParameterPlugin *pPara) override
Apply the parameters of the plug-in.
virtual Q_INVOKABLE CBackend * InstanceBackend() override
New CBackend.
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource.
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource.
virtual const QString Description() override
Description.
virtual int Save(QSettings &set) override
Save parameters.
virtual int Load(QSettings &set) override
Load parameters.
virtual CParameterFtpServer * GetParameter() const
Get parameter.
Server operate interface.
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource.
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource.
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