BeeeOn Gateway  v2020.3.1-2-g6f737dc
Platform to interconnect the IoT world
PasswordCredentials.h
1 #pragma once
2 
3 #include <string>
4 
5 #include "credentials/Credentials.h"
6 
7 namespace Poco {
8 namespace Crypto {
9 
10 class Cipher;
11 
12 }
13 }
14 
15 namespace BeeeOn {
16 
18 public:
21 
22  static const std::string TYPE;
23 
24  std::string username(Poco::Crypto::Cipher *cipher) const;
25  std::string password(Poco::Crypto::Cipher *cipher) const;
26 
27  void setUsername(const std::string &username, Poco::Crypto::Cipher *cipher);
28  void setPassword(const std::string &password, Poco::Crypto::Cipher *cipher);
29 
30  void setRawUsername(const std::string &username);
31  void setRawPassword(const std::string &password);
32 
33  void save(
34  Poco::AutoPtr<Poco::Util::AbstractConfiguration> conf,
35  const DeviceID &device,
36  const std::string &root = "credentials") const override;
37 
38  static Poco::SharedPtr<Credentials> create(
39  Poco::AutoPtr<Poco::Util::AbstractConfiguration> conf);
40 
41 private:
42  std::string m_username;
43  std::string m_password;
44 };
45 
46 }
Definition: Credentials.h:11
Definition: PasswordCredentials.h:17
Definition: DeviceID.h:17