forked from enlightenment/efl
Efl.Net.Dialer_* (from Efl.Net.Dialer.*)
Ref https://phab.enlightenment.org/T6847 Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
This commit is contained in:
parent
566a36dc99
commit
a785ba5495
|
@ -1,6 +1,6 @@
|
|||
var Efl.Net.Dialer.Error.COULDNT_CONNECT: Eina.Error; [[The dialer could not connect to the remote]]
|
||||
var Efl.Net.Dialer.Error.COULDNT_RESOLVE_PROXY: Eina.Error; [[The dialer could not resolve the given proxy server]]
|
||||
var Efl.Net.Dialer.Error.PROXY_AUTHENTICATION_FAILED: Eina.Error; [[The dialer failed to authenticate against the proxy server]]
|
||||
var Efl.Net.Dialer_Error.COULDNT_CONNECT: Eina.Error; [[The dialer could not connect to the remote]]
|
||||
var Efl.Net.Dialer_Error.COULDNT_RESOLVE_PROXY: Eina.Error; [[The dialer could not resolve the given proxy server]]
|
||||
var Efl.Net.Dialer_Error.PROXY_AUTHENTICATION_FAILED: Eina.Error; [[The dialer failed to authenticate against the proxy server]]
|
||||
|
||||
interface Efl.Net.Dialer (Efl.Net.Socket) {
|
||||
[[Creates a client socket to reach a remote peer.
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
import efl_net_http_types;
|
||||
|
||||
enum Efl.Net.Dialer.Http_Primary_Mode {
|
||||
enum Efl.Net.Dialer_Http_Primary_Mode {
|
||||
[[Primary HTTP mode]]
|
||||
auto, [[HTTP auto mode]]
|
||||
download, [[HTTP download mode]]
|
||||
upload, [[HTTP upload mode]]
|
||||
}
|
||||
|
||||
class Efl.Net.Dialer.Http (Efl.Loop_Consumer, Efl.Net.Dialer, Efl.Io.Sizer) {
|
||||
class Efl.Net.Dialer_Http (Efl.Loop_Consumer, Efl.Net.Dialer, Efl.Io.Sizer) {
|
||||
[[HTTP Dialer (Client).
|
||||
|
||||
The effective URL in use, if @.allow_redirects is $true will be
|
||||
|
@ -71,20 +71,20 @@ class Efl.Net.Dialer.Http (Efl.Loop_Consumer, Efl.Net.Dialer, Efl.Io.Sizer) {
|
|||
|
||||
This property will change the behavior of @Efl.Io.Sizer:
|
||||
|
||||
- If @Efl.Net.Dialer.Http_Primary_Mode.auto, then
|
||||
@Efl.Net.Dialer.Http_Primary_Mode.download or
|
||||
@Efl.Net.Dialer.Http_Primary_Mode.upload will be
|
||||
- If @Efl.Net.Dialer_Http_Primary_Mode.auto, then
|
||||
@Efl.Net.Dialer_Http_Primary_Mode.download or
|
||||
@Efl.Net.Dialer_Http_Primary_Mode.upload will be
|
||||
choosen based on the @.method: if "PUT", then it's
|
||||
upload, otherwise it's download.
|
||||
|
||||
- If @Efl.Net.Dialer.Http_Primary_Mode.upload, applying
|
||||
- If @Efl.Net.Dialer_Http_Primary_Mode.upload, applying
|
||||
a new size with @Efl.Io.Sizer.resize or
|
||||
@Efl.Io.Sizer.size.set will specify the
|
||||
"Content-Length" to upload. If no size is previously
|
||||
set, then the upload will happen in
|
||||
"Transfer-encoding: chunked".
|
||||
|
||||
- If @Efl.Net.Dialer.Http_Primary_Mode.download, then
|
||||
- If @Efl.Net.Dialer_Http_Primary_Mode.download, then
|
||||
@Efl.Io.Sizer.size.get will report the
|
||||
"Content-Length" provided by the server, if any.
|
||||
|
||||
|
@ -99,15 +99,15 @@ class Efl.Net.Dialer.Http (Efl.Loop_Consumer, Efl.Net.Dialer, Efl.Io.Sizer) {
|
|||
[[The effective primary mode.
|
||||
|
||||
This will return one of
|
||||
@Efl.Net.Dialer.Http_Primary_Mode.download or
|
||||
@Efl.Net.Dialer.Http_Primary_Mode.upload. If "auto"
|
||||
@Efl.Net.Dialer_Http_Primary_Mode.download or
|
||||
@Efl.Net.Dialer_Http_Primary_Mode.upload. If "auto"
|
||||
was set (the default), then it will pick the best
|
||||
based on the @.method in use.
|
||||
]]
|
||||
}
|
||||
set { }
|
||||
values {
|
||||
primary_mode: Efl.Net.Dialer.Http_Primary_Mode; [[Primary HTTP mode]]
|
||||
primary_mode: Efl.Net.Dialer_Http_Primary_Mode; [[Primary HTTP mode]]
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
class Efl.Net.Dialer.Simple (Efl.Net.Socket.Simple, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Simple (Efl.Net.Socket.Simple, Efl.Net.Dialer) {
|
||||
[[Connects to a remote server offering an easy to use, buffered I/O.
|
||||
|
||||
The simple dialer is based on @Efl.Net.Socket.Simple, which
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
class Efl.Net.Dialer.Ssl (Efl.Net.Socket.Ssl, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Ssl (Efl.Net.Socket.Ssl, Efl.Net.Dialer) {
|
||||
[[Connects to a remote SSL server using TCP.
|
||||
|
||||
This creates an internal @Efl.Net.Dialer.Tcp and once connected
|
||||
This creates an internal @Efl.Net.Dialer_Tcp and once connected
|
||||
it will start the SSL handshake.
|
||||
|
||||
If the proxy is NULL (default), then the system proxy will be
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
class Efl.Net.Dialer.Tcp (Efl.Net.Socket.Tcp, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Tcp (Efl.Net.Socket.Tcp, Efl.Net.Dialer) {
|
||||
[[Connects to a remote TCP server.
|
||||
|
||||
If the proxy is NULL (default), then the system proxy will be
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
class Efl.Net.Dialer.Udp (Efl.Net.Socket.Udp, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Udp (Efl.Net.Socket.Udp, Efl.Net.Dialer) {
|
||||
[[Connects to a remote UDP server.
|
||||
|
||||
UDP proxies are not supported, not even using SOCKSv5.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
class Efl.Net.Dialer.Unix (Efl.Net.Socket.Unix, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Unix (Efl.Net.Socket.Unix, Efl.Net.Dialer) {
|
||||
[[Connects to a local AF_UNIX server.
|
||||
|
||||
The dial address is a file system path (portable) or
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
import eina_types;
|
||||
import efl_net_http_types;
|
||||
|
||||
enum Efl.Net.Dialer.Websocket_Streaming_Mode {
|
||||
enum Efl.Net.Dialer_Websocket_Streaming_Mode {
|
||||
[[How to map WebSocket to EFL I/O Interfaces.
|
||||
|
||||
@since 1.19
|
||||
]]
|
||||
disabled, [[@Efl.Io.Writer.write and @Efl.Io.Reader.read will fail by returning ENOSTR]]
|
||||
binary, [[@Efl.Io.Writer.write will result in @Efl.Net.Dialer.Websocket.binary_send]]
|
||||
text, [[@Efl.Io.Writer.write will result in @Efl.Net.Dialer.Websocket.text_send]]
|
||||
binary, [[@Efl.Io.Writer.write will result in @Efl.Net.Dialer_Websocket.binary_send]]
|
||||
text, [[@Efl.Io.Writer.write will result in @Efl.Net.Dialer_Websocket.text_send]]
|
||||
}
|
||||
|
||||
enum Efl.Net.Dialer.Websocket_Close_Reason {
|
||||
enum Efl.Net.Dialer_Websocket_Close_Reason {
|
||||
[[Registered reasons for the CLOSE (opcode=0x8).
|
||||
|
||||
These are the well known reasons, with some ranges being defined
|
||||
|
@ -38,16 +38,16 @@ enum Efl.Net.Dialer.Websocket_Close_Reason {
|
|||
private_end = 4999, [[Applications can use range 4000-4999]]
|
||||
}
|
||||
|
||||
struct Efl.Net.Dialer.Websocket_Closed_Reason {
|
||||
struct Efl.Net.Dialer_Websocket_Closed_Reason {
|
||||
[[Close reason event payload.
|
||||
|
||||
@since 1.19
|
||||
]]
|
||||
reason: Efl.Net.Dialer.Websocket_Close_Reason; [[Closing reason]]
|
||||
reason: Efl.Net.Dialer_Websocket_Close_Reason; [[Closing reason]]
|
||||
message: string; [[Textual closing reason message]]
|
||||
}
|
||||
|
||||
class Efl.Net.Dialer.Websocket (Efl.Loop_Consumer, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Websocket (Efl.Loop_Consumer, Efl.Net.Dialer) {
|
||||
[[WebSocket Dialer (Client).
|
||||
|
||||
The WebSocket Protocol (https://tools.ietf.org/html/rfc6455) is
|
||||
|
@ -135,7 +135,7 @@ class Efl.Net.Dialer.Websocket (Efl.Loop_Consumer, Efl.Net.Dialer) {
|
|||
close message, which will be reported as "closed,reason".
|
||||
]]
|
||||
params {
|
||||
reason: Efl.Net.Dialer.Websocket_Close_Reason; [[Reason for closing]]
|
||||
reason: Efl.Net.Dialer_Websocket_Close_Reason; [[Reason for closing]]
|
||||
message: string @optional; [[Additional closing message]]
|
||||
}
|
||||
}
|
||||
|
@ -174,9 +174,9 @@ class Efl.Net.Dialer.Websocket (Efl.Loop_Consumer, Efl.Net.Dialer) {
|
|||
However this class can operate in streaming mode,
|
||||
mapping each @Efl.Io.Writer.write to a @.binary_send if
|
||||
streaming_mode is set to
|
||||
@Efl.Net.Dialer.Websocket_Streaming_Mode.binary, of
|
||||
@Efl.Net.Dialer_Websocket_Streaming_Mode.binary, of
|
||||
@.text_send if
|
||||
@Efl.Net.Dialer.Websocket_Streaming_Mode.text
|
||||
@Efl.Net.Dialer_Websocket_Streaming_Mode.text
|
||||
|
||||
@Efl.Io.Reader.read may consume less then the whole
|
||||
received message, in this case the rest of the message
|
||||
|
@ -184,12 +184,12 @@ class Efl.Net.Dialer.Websocket (Efl.Loop_Consumer, Efl.Net.Dialer) {
|
|||
SOCK_SEQPACKET + read(2)).
|
||||
|
||||
By default, streaming is disabled
|
||||
(@Efl.Net.Dialer.Websocket_Streaming_Mode.disabled).
|
||||
(@Efl.Net.Dialer_Websocket_Streaming_Mode.disabled).
|
||||
]]
|
||||
get { }
|
||||
set { }
|
||||
values {
|
||||
streaming_mode: Efl.Net.Dialer.Websocket_Streaming_Mode; [[Streaming mode]]
|
||||
streaming_mode: Efl.Net.Dialer_Websocket_Streaming_Mode; [[Streaming mode]]
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -309,7 +309,7 @@ class Efl.Net.Dialer.Websocket (Efl.Loop_Consumer, Efl.Net.Dialer) {
|
|||
message,text: string; [[Received a text string message (opcode=0x1)]]
|
||||
message,binary: ptr(const(Eina.Slice)); [[Received a binary message (opcode=0x2)]]
|
||||
pong: string; [[Received a pong (opcode=0xA) with optional message/reason]]
|
||||
closed,reason: Efl.Net.Dialer.Websocket_Closed_Reason; [[Received a request to close the connection. It may be a reply/confirmation from a local request, see @.close_request, or some server-generated reason. After this point, no more messages are allowed to be sent and no more will be received. @Efl.Io.Closer.close will be called.]]
|
||||
closed,reason: Efl.Net.Dialer_Websocket_Closed_Reason; [[Received a request to close the connection. It may be a reply/confirmation from a local request, see @.close_request, or some server-generated reason. After this point, no more messages are allowed to be sent and no more will be received. @Efl.Io.Closer.close will be called.]]
|
||||
}
|
||||
|
||||
implements {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
class Efl.Net.Dialer.Windows (Efl.Net.Socket.Windows, Efl.Net.Dialer) {
|
||||
class Efl.Net.Dialer_Windows (Efl.Net.Socket.Windows, Efl.Net.Dialer) {
|
||||
[[Connects to a Windows NamedPipe server.
|
||||
|
||||
The dial address will have "\\\\.\\pipe\\" prepended as required by
|
||||
|
|
|
@ -6,7 +6,7 @@ class Efl.Net.Socket.Ssl (Efl.Loop_Consumer, Efl.Net.Socket) {
|
|||
|
||||
Use this wrapper around an existing socket for secure
|
||||
communication. One common use is to apply it to TCP sockets
|
||||
created with @Efl.Net.Dialer.Tcp or @Efl.Net.Server.Tcp created
|
||||
created with @Efl.Net.Dialer_Tcp or @Efl.Net.Server.Tcp created
|
||||
with "client,add" event.
|
||||
|
||||
@since 1.19
|
||||
|
|
Loading…
Reference in New Issue