aboutsummaryrefslogtreecommitdiffstats
path: root/pages/develop/api/efl/net/dialer.txt
blob: f54e2a096278c88945b00a0c18455c089b2f170a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
~~Title: Efl.Net.Dialer~~
====== Efl.Net.Dialer (interface) ======

===== Description =====

%%Creates a client socket to reach a remote peer.%%

%%The connection process starts when %%[[:develop:api:efl:net:dialer:method:dial|Efl.Net.Dialer.dial]]%% is executed, this allows implementations to request more complex setup that would require a live object handle that is not possible during construction.%%

%%The socket should be considered connected and ready to use only when "connected" event is dispatched, by then %%[[:develop:api:efl:io:reader:property:can_read|Efl.Io.Reader.can_read]]%% and %%[[:develop:api:efl:io:writer:property:can_write|Efl.Io.Writer.can_write]]%% should change accordingly.%%

%%Once the socket is closed, %%[[:develop:api:efl:io:closer:property:closed|Efl.Io.Closer.closed]]%% will be called and the "closed" event is dispatched.%%

//Since 1.19//

{{page>:develop:api-include:efl:net:dialer:description&nouser&nolink&nodate}}

===== Inheritance =====

 => [[:develop:api:efl:net:socket|Efl.Net.Socket]] //(interface)// => [[:develop:api:efl:io:reader|Efl.Io.Reader]] //(interface)//
++++ Inheritance graph |

<graphviz>
digraph hierarchy {
    bgcolor = "transparent"
    size = "6"
    rankdir = "TB"

    node [shape = "box"]
    edge [color = "gray35"]

    efl_net_dialer [fillcolor = "dodgerblue4", label = "Efl.Net.Dialer", color = "cornflowerblue", fontcolor = "white", style = "filled"]
    efl_net_socket [fillcolor = "gray15", label = "Efl.Net.Socket", color = "cornflowerblue", fontcolor = "white", style = "filled"]
    efl_io_reader [fillcolor = "gray15", label = "Efl.Io.Reader", color = "cornflowerblue", fontcolor = "white", style = "filled"]
    efl_io_writer [fillcolor = "gray15", label = "Efl.Io.Writer", color = "cornflowerblue", fontcolor = "white", style = "filled"]
    efl_io_closer [fillcolor = "gray15", label = "Efl.Io.Closer", color = "deepskyblue", fontcolor = "white", style = "filled"]

    efl_net_dialer -> efl_net_socket
    efl_net_socket -> efl_io_reader
    efl_net_socket -> efl_io_writer
    efl_net_socket -> efl_io_closer
}
</graphviz>

++++

++++ Full hierarchy |

  * [[:develop:api:efl:net:socket|Efl.Net.Socket]] //(interface)//
    * [[:develop:api:efl:io:reader|Efl.Io.Reader]] //(interface)//
    * [[:develop:api:efl:io:writer|Efl.Io.Writer]] //(interface)//
    * [[:develop:api:efl:io:closer|Efl.Io.Closer]] //(mixin)//


++++
===== Members =====

**[[:develop:api:efl:net:dialer:method:dial|dial]]**
<code c>
Eina_Error efl_net_dialer_dial(Eo *obj, const char *address);
</code>

%%Dials to the remote peer.%%\\ 
\\ 
**[[:develop:api:efl:net:dialer:property:address_dial|address_dial]]** //**(get, set)**// ''protected set''
<code c>
const char *efl_net_dialer_address_dial_get(const Eo *obj);
void efl_net_dialer_address_dial_set(Eo *obj, const char *address);
</code>

%%Returns the address given to %%[[:develop:api:efl:net:dialer:method:dial|Efl.Net.Dialer.dial]]%%.%%\\ 
\\ 
**[[:develop:api:efl:net:dialer:property:connected|connected]]** //**(get, set)**// ''protected set''
<code c>
Eina_Bool efl_net_dialer_connected_get(const Eo *obj);
void efl_net_dialer_connected_set(Eo *obj, Eina_Bool connected);
</code>

%%Returns whenever the socket is connected or not.%%\\ 
\\ 
**[[:develop:api:efl:net:dialer:property:proxy|proxy]]** //**(get, set)**//
<code c>
const char *efl_net_dialer_proxy_get(const Eo *obj);
void efl_net_dialer_proxy_set(Eo *obj, const char *proxy_url);
</code>

%%Controls/retrieves if the dialer should use a proxy.%%\\ 
\\ 
**[[:develop:api:efl:net:dialer:property:timeout_dial|timeout_dial]]** //**(get, set)**//
<code c>
double efl_net_dialer_timeout_dial_get(const Eo *obj);
void efl_net_dialer_timeout_dial_set(Eo *obj, double seconds);
</code>

%%The timeout in seconds to use for dialing/connecting.%%\\ 
\\ 

==== Inherited ====

[[:develop:api:efl:io:closer|Efl.Io.Closer]].**[[:develop:api:efl:io:closer:method:close|close]]**
\\ 
[[:develop:api:efl:io:closer|Efl.Io.Closer]].**[[:develop:api:efl:io:closer:property:close_on_destructor|close_on_destructor]]** //**(get, set)**//
\\ 
[[:develop:api:efl:io:closer|Efl.Io.Closer]].**[[:develop:api:efl:io:closer:property:close_on_exec|close_on_exec]]** //**(get, set)**//
\\ 
[[:develop:api:efl:io:closer|Efl.Io.Closer]].**[[:develop:api:efl:io:closer:property:closed|closed]]** //**(get, set)**//
\\ 
[[:develop:api:efl:io:reader|Efl.Io.Reader]].**[[:develop:api:efl:io:reader:method:read|read]]**
\\ 
[[:develop:api:efl:io:reader|Efl.Io.Reader]].**[[:develop:api:efl:io:reader:property:can_read|can_read]]** //**(get, set)**// ''protected set''
\\ 
[[:develop:api:efl:io:reader|Efl.Io.Reader]].**[[:develop:api:efl:io:reader:property:eos|eos]]** //**(get, set)**// ''protected set''
\\ 
[[:develop:api:efl:io:writer|Efl.Io.Writer]].**[[:develop:api:efl:io:writer:method:write|write]]**
\\ 
[[:develop:api:efl:io:writer|Efl.Io.Writer]].**[[:develop:api:efl:io:writer:property:can_write|can_write]]** //**(get, set)**// ''protected set''
\\ 
[[:develop:api:efl:net:socket|Efl.Net.Socket]].**[[:develop:api:efl:net:socket:property:address_local|address_local]]** //**(get, set)**// ''protected set''
\\ 
[[:develop:api:efl:net:socket|Efl.Net.Socket]].**[[:develop:api:efl:net:socket:property:address_remote|address_remote]]** //**(get, set)**// ''protected set''
\\ 

===== Events =====

**[[:develop:api:efl:net:dialer:event:connected|connected]]**
<code c>
EFL_NET_DIALER_EVENT_CONNECTED(void)
</code>

%%Notifies the socket is connected to the remote peer.%%\\ 
\\ 
**[[:develop:api:efl:net:dialer:event:error|error]]**
<code c>
EFL_NET_DIALER_EVENT_ERROR(Eina_Error)
</code>

%%Some error happened and the socket stopped working.%%\\ 
\\ 
**[[:develop:api:efl:net:dialer:event:resolved|resolved]]**
<code c>
EFL_NET_DIALER_EVENT_RESOLVED(const char *)
</code>

%%Notifies %%[[:develop:api:efl:net:dialer:property:address_dial|Efl.Net.Dialer.address_dial]]%% was resolved to %%[[:develop:api:efl:net:socket:property:address_remote|Efl.Net.Socket.address_remote]]%%.%%\\ 
\\ 
==== Inherited ====

[[:develop:api:efl:io:closer|Efl.Io.Closer]].**[[:develop:api:efl:io:closer:event:closed|closed]]**
\\ 
[[:develop:api:efl:io:reader|Efl.Io.Reader]].**[[:develop:api:efl:io:reader:event:can_read_changed|can_read,changed]]**
\\ 
[[:develop:api:efl:io:reader|Efl.Io.Reader]].**[[:develop:api:efl:io:reader:event:eos|eos]]**
\\ 
[[:develop:api:efl:io:writer|Efl.Io.Writer]].**[[:develop:api:efl:io:writer:event:can_write_changed|can_write,changed]]**
\\