Module xmlrpc

Copyright © 2003 Joakim Grebenö

Authors: Joakim Grebenö (jocke@tail-f.com), Torbjörn Törnkvist (etnt@redhoterlang.com).

Data Types

base64()

base64() = {base64, string()}

call_result()

call_result() = {ok, response_payload()} | {ok, socket(), response_payload()} | {error, Reason::term()} | {error, socket(), Reason::term()}

host()

host() = string() | ip_address()

ip_address()

ip_address() = inet:ip_address()

iso8601date()

iso8601date() = {date, string()}

response_payload()

response_payload() = {response, [xmlrpc_value()]} | {response, {fault, Code::integer(), Message::string()}}

socket()

socket() = term()

uri()

uri() = string()

xmlrpc_array()

xmlrpc_array() = {array, [xmlrpc_value()]}

xmlrpc_struct()

xmlrpc_struct() = {struct, [{Key::atom(), Value::xmlrpc_value()}]}

xmlrpc_value()

xmlrpc_value() = integer() | float() | string() | boolean() | iso8601date() | base64() | xmlrpc_struct() | xmlrpc_array()

Function Index

call/3Equivalent to call(Socket, URI, Payload, false, 60000).
call/4Equivalent to call(Host, Port, URI, Payload, false, 60000).
call/5Calls an XML-RPC server on an open connection.
call/6Calls an XML-RPC server listening on Host:Port.
cbs_ip/1
cbs_ip/2
cbs_new/0
cbs_opaque/1
cbs_opaque/2
cbs_port/1
cbs_port/2
cbs_record/1
ssl_call/3Equivalent to ssl_call(Socket, URI, Payload, false, 60000).
ssl_call/4Equivalent to ssl_call(Host, Port, URI, Payload, false, 60000).
ssl_call/5Calls an XML-RPC server on an open SSL connection.
ssl_call/6Calls an SSL XML-RPC server listening on Host:Port over.
start_link/1Equivalent to start_link(4567, 1000, 60000, Handler, undefined).
start_link/5Equivalent to start_link(all, Port, MaxSessions, Timeout, Handler, State).
start_link/6Starts an XML-RPC server listening on IP:Port.
start_link/7
stop/1Stops a running XML-RPC server.

Function Details

call/3

call(Socket, URI, Payload) -> call_result()

Equivalent to call(Socket, URI, Payload, false, 60000).

call/4

call(Host, Port, URI, Payload) -> call_result()

Equivalent to call(Host, Port, URI, Payload, false, 60000).

call/5

call(Socket, URI, Payload, KeepAlive, Timeout) -> call_result()

Calls an XML-RPC server on an open connection.

See also: call/6.

call/6

call(Host, Port, URI, Payload, KeepAlive, Timeout) -> call_result()

Calls an XML-RPC server listening on Host:Port. The arguments URI and Payload are used in the HTTP POST request sent to the server. The Arguments are converted to XML for the request body.

If KeepAlive is true, a socket is returned. The socket can be used to send several calls on the same connection in accordance with HTTP 1.1. If no server response is received within Timeout milliseconds {error, timeout} or {error, Socket, timeout} is returned.

KeepAlive and Timeout default to false and 60000 milliseconds, respectively.

See also: ssl_call/6.

cbs_ip/1

cbs_ip(Cback_state) -> any()

cbs_ip/2

cbs_ip(Cback_state, Ip) -> any()

cbs_new/0

cbs_new() -> any()

cbs_opaque/1

cbs_opaque(Cback_state) -> any()

cbs_opaque/2

cbs_opaque(Cback_state, Opaque) -> any()

cbs_port/1

cbs_port(Cback_state) -> any()

cbs_port/2

cbs_port(Cback_state, Port) -> any()

cbs_record/1

cbs_record(Cback_state) -> any()

ssl_call/3

ssl_call(Socket, URI, Payload) -> call_result()

Equivalent to ssl_call(Socket, URI, Payload, false, 60000).

See also: ssl_call/5.

ssl_call/4

ssl_call(Host, Port, URI, Payload) -> call_result()

Equivalent to ssl_call(Host, Port, URI, Payload, false, 60000).

See also: ssl_call/6.

ssl_call/5

ssl_call(Socket, URI, Payload, KeepAlive, Timeout) -> call_result()

Calls an XML-RPC server on an open SSL connection.

See also: ssl_call/6.

ssl_call/6

ssl_call(Host, Port, URI, Payload, KeepAlive, Timeout) -> call_result()

Calls an SSL XML-RPC server listening on Host:Port over.

See also: call/6.

start_link/1

start_link(Handler) -> {ok, pid()} | {error, Reason::term()}

Equivalent to start_link(4567, 1000, 60000, Handler, undefined).

start_link/5

start_link(Port, MaxSessions, Timeout, Handler, State) -> {ok, pid()} | {error, Reason::term()}

Equivalent to start_link(all, Port, MaxSessions, Timeout, Handler, State).

start_link/6

start_link(IP, Port, MaxSessions, Timeout, Handler, State) -> {ok, pid()} | {error, Reason::term()}

Starts an XML-RPC server listening on IP:Port. If no IP address is given, the server listens on Port for all available IP addresses. MaxSessions is used to restrict the number of concurrent connections. If MaxSessions is reached, the server accepts no new connections for 5 seconds, i.e., blocks new connect attempts.

Handler is a callback, implemented by Module:Function/2, which is used to instantiate an XML-RPC server. The Timeout value is used if the handler is keepalive-oriented. State is the initial state given to Module:Function/2. The resulting pid can be used as input to xmlrpc:stop/1.

start_link/7

start_link(Register, IP, Port, MaxSessions, Timeout, Handler, State) -> any()

stop/1

stop(Pid::pid()) -> ok

Stops a running XML-RPC server.


Generated by EDoc, Feb 7 2018, 09:12:32.