xtd - Reference Guide  0.1.0
Modern c++17/20 framework to create console, GUI and unit test applications on Windows, macOS, Linux, iOS and android.
Public Member Functions | List of all members
xtd::net::dns_end_point Class Reference

#include <dns_end_point.h>

Definition

Represents a network endpoint as a host name or a string representation of an IP address and a port number.

Namespace
xtd::net
Library
xtd.core

Public Member Functions

 dns_end_point (const xtd::ustring &host, uint16_t port)
 Initializes a new instance of the xtd::net::dns_end_point class with the host name or string representation of an IP address and a port number. More...
 
 dns_end_point (const xtd::ustring &host, uint16_t port, sockets::address_family address_family)
 Initializes a new instance of the xtd::net::dns_end_point class with the host name or string representation of an IP address, a port number, and an address family. More...
 
const xtd::ustringhost () const noexcept
 Gets the host name or string representation of the Internet Protocol (IP) address of the host. More...
 
uint16_t port () const noexcept
 Gets the port number of the endpoint. More...
 
xtd::ustring to_string () const noexcept override
 Returns a string that represents the current object. More...
 
- Public Member Functions inherited from xtd::net::end_point
sockets::address_family address_family () const noexcept
 Gets the address family to which the endpoint belongs. More...
 
virtual std::unique_ptr< end_pointcreate (const socket_address &socket_address) const
 Creates an xtd::net::end_point instance from a socket_address instance. More...
 
virtual socket_address serialize () const
 Serializes endpoint information into a socket_address instance. More...
 
ustring to_string () const noexcept override
 Returns a string that represents the current object. More...
 
- Public Member Functions inherited from xtd::object
 object ()=default
 Create a new instance of the ultimate base class object. More...
 
virtual bool equals (const object &obj) const noexcept
 Determines whether the specified object is equal to the current object. More...
 
virtual size_t get_hash_code () const noexcept
 Serves as a hash function for a particular type. More...
 
template<typename object_t >
std::unique_ptr< object_t > memberwise_clone () const
 Gets the type of the current instance. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from xtd::object
static bool equals (const object &object_a, const object &object_b) noexcept
 Determines whether the specified object instances are considered equal. More...
 
static bool reference_equals (const object &object_a, const object &object_b) noexcept
 Determines whether the specified object instances are the same instance. More...
 
- Protected Member Functions inherited from xtd::net::end_point
 end_point (sockets::address_family address_family)
 Initializes a new instance of the xtd::net::end_point class. More...
 

Constructor & Destructor Documentation

◆ dns_end_point() [1/2]

xtd::net::dns_end_point::dns_end_point ( const xtd::ustring host,
uint16_t  port 
)

Initializes a new instance of the xtd::net::dns_end_point class with the host name or string representation of an IP address and a port number.

Parameters
hostThe host name or a string representation of the IP address.
portThe port number associated with the address, or 0 to specify any available port. port is in host order.
Exceptions
xtd::argument_exceptionThe host parameter contains an empty string.
Remarks
The xtd::dns_end_point::dns_end_point(const xtd::ustring& host, int32_t port) constructor can be used to initialize a xtd::net::dns_end_point class using either a host name or a string that represents an IP address and a port. This constructor sets the xtd::net::sockects::address_family property to xtd::net::sockects::address_family::unknown.
When using this constructor with a host name rather than a string representation of an IP address, the address family of the dns_end_point will remain Unknown even after use. The xtd::net::sockects::address_family property of any Socket that is created by calls to the ConnectAsync method will be the address family of the first address to which a connection can be successfully established (not necessarily the first address to be resolved).

◆ dns_end_point() [2/2]

xtd::net::dns_end_point::dns_end_point ( const xtd::ustring host,
uint16_t  port,
sockets::address_family  address_family 
)

Initializes a new instance of the xtd::net::dns_end_point class with the host name or string representation of an IP address, a port number, and an address family.

Parameters
hostThe host name or a string representation of the IP address.
portThe port number associated with the address, or 0 to specify any available port. port is in host order.
address_familyOne of the xtd::net::sockects::address_family values.
Exceptions
xtd::argument_exceptionThe host parameter contains an empty string.
Remarks
The xtd::dns_end_point::dns_end_point(const xtd::ustring& host, int32_t port, xtd::net::sockects::address_family) constructor can be used to initialize a dns_end_point class using either a host name or a string that represents an IP address, a port, and an address family.
When using the constructor with a host name rather than a string representation of an IP address, the address family restricts DNS resolution to prefer addresses of the specified address family value. When using the constructor with the address family specified as Unknown, the address family of the dns_end_point will remain Unknown even after use. The xtd::net::sockects::address_family property of any Socket that is created by calls to the ConnectAsync method will be the address family of the first address to which a connection can be successfully established (not necessarily the first address to be resolved).

Member Function Documentation

◆ host()

const xtd::ustring& xtd::net::dns_end_point::host ( ) const
noexcept

Gets the host name or string representation of the Internet Protocol (IP) address of the host.

Returns
The host name or a string representation of the IP address.

◆ port()

uint16_t xtd::net::dns_end_point::port ( ) const
noexcept

Gets the port number of the endpoint.

Returns
An integer value in the range xtd::net::ip_end_point::min_port to xtd::net::ip_end_point::max_port indicating the port number of the endpoint.

◆ to_string()

xtd::ustring xtd::net::dns_end_point::to_string ( ) const
overridevirtualnoexcept

Returns a string that represents the current object.

Returns
string A string that represents the current object.

Reimplemented from xtd::object.


The documentation for this class was generated from the following file: