20 #ifndef RIPPLE_PEERFINDER_SLOT_H_INCLUDED
21 #define RIPPLE_PEERFINDER_SLOT_H_INCLUDED
23 #include <ripple/protocol/PublicKey.h>
24 #include <ripple/beast/net/IPEndpoint.h>
25 #include <boost/optional.hpp>
29 namespace PeerFinder {
49 virtual bool inbound ()
const = 0;
55 virtual bool fixed ()
const = 0;
70 virtual boost::optional <beast::IP::Endpoint>
const&
local_endpoint ()
const = 0;
72 virtual boost::optional<std::uint16_t>
listening_port ()
const = 0;
77 virtual boost::optional <PublicKey>
const&
public_key ()
const = 0;
virtual State state() const =0
Returns the state of the connection.
virtual bool fixed() const =0
Returns true if this is a fixed connection.
virtual boost::optional< PublicKey > const & public_key() const =0
The peer's public key, when known.
virtual bool reserved() const =0
Returns true if this is a reserved connection.
virtual beast::IP::Endpoint const & remote_endpoint() const =0
The remote endpoint of socket.
virtual boost::optional< std::uint16_t > listening_port() const =0
virtual boost::optional< beast::IP::Endpoint > const & local_endpoint() const =0
The local endpoint of the socket, when known.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
virtual bool inbound() const =0
Returns true if this is an inbound connection.
A version-independent IP address and port combination.
Properties and state associated with a peer to peer overlay connection.