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