hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
peer.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_SHARED_MODEL_PLAIN_PEER_HPP
7 #define IROHA_SHARED_MODEL_PLAIN_PEER_HPP
8 
10 
11 #include <optional>
12 
13 namespace shared_model {
14  namespace plain {
15 
16  class Peer final : public interface::Peer {
17  public:
19  std::string public_key_hex,
20  const std::optional<interface::types::TLSCertificateTypeView>
21  &tls_certificate);
22 
23  const interface::types::AddressType &address() const override;
24 
25  const std::string &pubkey() const override;
26 
27  const std::optional<interface::types::TLSCertificateType>
28  &tlsCertificate() const override;
29 
31 
32  private:
33  const interface::types::AddressType address_;
34  const std::string public_key_hex_;
35  std::optional<interface::types::TLSCertificateType> tls_certificate_;
36  };
37 
38  } // namespace plain
39 } // namespace shared_model
40 
41 #endif // IROHA_SHARED_MODEL_PLAIN_PEER_HPP
std::string AddressType
Type of peer address.
Definition: types.hpp:50
void setTlsCertificate(interface::types::TLSCertificateTypeView cert)
Definition: peer.cpp:32
Definition: peer.hpp:20
std::string_view TLSCertificateTypeView
Definition: types.hpp:98
Definition: peer.hpp:16
const std::string & pubkey() const override
Definition: peer.cpp:23
Peer(const interface::types::AddressTypeView address, std::string public_key_hex, const std::optional< interface::types::TLSCertificateTypeView > &tls_certificate)
Definition: peer.cpp:11
const interface::types::AddressType & address() const override
Definition: peer.cpp:19
Definition: command_executor.hpp:13
const std::optional< interface::types::TLSCertificateType > & tlsCertificate() const override
Definition: peer.cpp:28
std::string_view AddressTypeView
Type of peer address.
Definition: types.hpp:52