Robust Distributed System Nucleus (rDSN)  ver 1.0.0
Classes | Typedefs | Enumerations | Functions

Overview

Classes

struct  dsn_address_t
 
class  dsn::rpc_address
 
class  dsn::url_host_address
 

Typedefs

typedef enum dsn_host_type_t dsn_host_type_t
 
typedef struct dsn_address_t dsn_address_t
 

Enumerations

enum  dsn_host_type_t { HOST_TYPE_INVALID = 0, HOST_TYPE_IPV4 = 1, HOST_TYPE_GROUP = 2, HOST_TYPE_URI = 3 }
 

Functions

DSN_API uint32_t dsn_ipv4_from_host (const char *name)
 
DSN_API uint32_t dsn_ipv4_local (const char *network_interface)
 
DSN_API dsn_address_t dsn_address_build (const char *host, uint16_t port)
 
DSN_API dsn_address_t dsn_address_build_ipv4 (uint32_t ipv4, uint16_t port)
 
DSN_API dsn_address_t dsn_address_build_group (dsn_group_t g)
 
DSN_API dsn_address_t dsn_address_build_uri (dsn_uri_t uri)
 
DSN_API const char * dsn_address_to_string (dsn_address_t addr)
 
DSN_API dsn_uri_t dsn_uri_build (const char *url)
 
DSN_API void dsn_uri_destroy (dsn_uri_t uri)
 
DSN_API dsn_group_t dsn_group_build (const char *name)
 
DSN_API int dsn_group_count (dsn_group_t g)
 
DSN_API bool dsn_group_add (dsn_group_t g, dsn_address_t ep)
 
DSN_API bool dsn_group_remove (dsn_group_t g, dsn_address_t ep)
 
DSN_API void dsn_group_set_leader (dsn_group_t g, dsn_address_t ep)
 
DSN_API dsn_address_t dsn_group_get_leader (dsn_group_t g)
 
DSN_API bool dsn_group_is_leader (dsn_group_t g, dsn_address_t ep)
 
DSN_API bool dsn_group_is_update_leader_automatically (dsn_group_t g)
 
DSN_API void dsn_group_set_update_leader_automatically (dsn_group_t g, bool v)
 
DSN_API dsn_address_t dsn_group_next (dsn_group_t g, dsn_address_t ep)
 
DSN_API dsn_address_t dsn_group_forward_leader (dsn_group_t g)
 
DSN_API void dsn_group_destroy (dsn_group_t g)
 
DSN_API dsn_address_t dsn_primary_address ()
 
 dsn::rpc_address::rpc_address (uint32_t ip, uint16_t port)
 
 dsn::rpc_address::rpc_address (const char *host, uint16_t port)
 
void dsn::rpc_address::assign_ipv4 (uint32_t ip, uint16_t port)
 
void dsn::rpc_address::assign_ipv4 (const char *host, uint16_t port)
 
void dsn::rpc_address::assign_ipv4_local_address (const char *card_interface, uint16_t port)
 
void dsn::rpc_address::assign_uri (dsn_uri_t uri)
 
void dsn::rpc_address::assign_group (dsn_group_t g)
 
 dsn::rpc_address::rpc_address (const rpc_address &addr)
 
 dsn::rpc_address::rpc_address (dsn_address_t addr)
 
rpc_address & dsn::rpc_address::operator= (dsn_address_t addr)
 
bool dsn::rpc_address::operator== (::dsn::rpc_address r) const
 
bool dsn::rpc_address::operator!= (::dsn::rpc_address r) const
 
bool dsn::rpc_address::operator< (::dsn::rpc_address r) const
 
const char * dsn::rpc_address::to_string () const
 
std::string dsn::rpc_address::to_std_string () const
 
bool dsn::rpc_address::from_string_ipv4 (const char *s)
 
 dsn::url_host_address::url_host_address (const char *url_or_host_port)
 

Enumeration Type Documentation

rpc address host type

Enumerator
HOST_TYPE_IPV4 

4 bytes for IPv4

HOST_TYPE_GROUP 

reference to an address group object

HOST_TYPE_URI 

universal resource identifier as a string