2017-09-12 22:42:36 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2017-11-15 18:37:54 +01:00
<class name= "IP" inherits= "Object" category= "Core" version= "3.0-alpha" >
2017-09-12 22:42:36 +02:00
<brief_description >
IP Protocol support functions.
</brief_description>
<description >
IP contains support functions for the IPv4 protocol. TCP/IP support is in different classes (see [StreamPeerTCP] and [TCP_Server]). IP provides hostname resolution support, both blocking and threaded.
</description>
<tutorials >
</tutorials>
<demos >
</demos>
<methods >
<method name= "clear_cache" >
<return type= "void" >
</return>
<argument index= "0" name= "hostname" type= "String" default= """" >
</argument>
<description >
Removes all of a "hostname"'s cached references. If no "hostname" is given then all cached IP addresses are removed.
</description>
</method>
<method name= "erase_resolve_item" >
<return type= "void" >
</return>
<argument index= "0" name= "id" type= "int" >
</argument>
<description >
Removes a given item "id" from the queue. This should be used to free a queue after it has completed to enable more queries to happen.
</description>
</method>
<method name= "get_local_addresses" qualifiers= "const" >
<return type= "Array" >
</return>
<description >
Returns all of the user's current IPv4 and IPv6 addresses as an array.
</description>
</method>
<method name= "get_resolve_item_address" qualifiers= "const" >
<return type= "String" >
</return>
<argument index= "0" name= "id" type= "int" >
</argument>
<description >
Returns a queued hostname's IP address, given its queue "id". Returns an empty string on error or if resolution hasn't happened yet (see [method get_resolve_item_status]).
</description>
</method>
<method name= "get_resolve_item_status" qualifiers= "const" >
<return type= "int" enum= "IP.ResolverStatus" >
</return>
<argument index= "0" name= "id" type= "int" >
</argument>
<description >
Returns a queued hostname's status as a RESOLVER_STATUS_* constant, given its queue "id".
</description>
</method>
<method name= "resolve_hostname" >
<return type= "String" >
</return>
<argument index= "0" name= "host" type= "String" >
</argument>
<argument index= "1" name= "ip_type" type= "int" enum= "IP.Type" default= "3" >
</argument>
<description >
Returns a given hostname's IPv4 or IPv6 address when resolved (blocking-type method). The address type returned depends on the TYPE_* constant given as "ip_type".
</description>
</method>
<method name= "resolve_hostname_queue_item" >
<return type= "int" >
</return>
<argument index= "0" name= "host" type= "String" >
</argument>
<argument index= "1" name= "ip_type" type= "int" enum= "IP.Type" default= "3" >
</argument>
<description >
Creates a queue item to resolve a hostname to an IPv4 or IPv6 address depending on the TYPE_* constant given as "ip_type". Returns the queue ID if successful, or RESOLVER_INVALID_ID on error.
</description>
</method>
</methods>
<constants >
<constant name= "RESOLVER_STATUS_NONE" value= "0" >
</constant>
<constant name= "RESOLVER_STATUS_WAITING" value= "1" >
</constant>
<constant name= "RESOLVER_STATUS_DONE" value= "2" >
</constant>
<constant name= "RESOLVER_STATUS_ERROR" value= "3" >
</constant>
<constant name= "RESOLVER_MAX_QUERIES" value= "32" enum= "" >
</constant>
<constant name= "RESOLVER_INVALID_ID" value= "-1" enum= "" >
</constant>
<constant name= "TYPE_NONE" value= "0" >
</constant>
<constant name= "TYPE_IPV4" value= "1" >
</constant>
<constant name= "TYPE_IPV6" value= "2" >
</constant>
<constant name= "TYPE_ANY" value= "3" >
</constant>
</constants>
</class>