Module exmpp_compress

The module exmpp_compress provides functions to handle stream compression.

Behaviours: gen_server.

Authors: Jean-Sébastien Pédron (js.pedron@meetic-corp.com).

Description

The module exmpp_compress provides functions to handle stream compression.

Data Types

compress_socket()

abstract datatype: compress_socket()

Compression socket obtained with compress/2.

Function Index

close/1Turn off compression and close the underlying socket.
controlling_process/2Change the controlling socket of the underlying socket.
disable_compression/1Disable compression and return the underlying socket.
enable_compression/2Enable compression over the given socket.
get_compress_methods/0Return the list of supported compress methods.
get_engine_driver/1Return the port driver name associated to the given engine.
get_engine_names/0Return the list of compression engines.
get_engine_names/1Return the list of compression engines which support the given compress method.
get_prefered_engine_name/1Return the name of the prefered compression engines which support the given compress method.
getopts/2Sets one or more options for a socket.
is_engine_available/1Tell if Engine_Name is available.
peername/1Returns the address and port for the other end of a connection.
recv/1Receive data over a compressed connection.
recv/2Receive data over a compressed connection.
recv_data/2Uncompressed already received data.
register_engine/3Add a new compression engine.
register_engine/4Add a new compression engine.
send/2Send Orig_Packet over a compressed connection.
setopts/2Sets one or more options for a socket.
sockname/1Returns the local address and port number for a socket.

Function Details

close/1

close(Compress_socket::Compress_Socket) -> ok | {error, Reason}

Turn off compression and close the underlying socket.

controlling_process/2

controlling_process(Compress_socket::Compress_Socket, Pid) -> ok | {error, Reason}

Change the controlling socket of the underlying socket.

disable_compression/1

disable_compression(Compress_socket::Compress_Socket) -> Socket_Desc

Disable compression and return the underlying socket.

enable_compression/2

enable_compression(Socket_Desc, Options) -> Compress_Socket

Enable compression over the given socket.

get_compress_methods/0

get_compress_methods() -> [Compress_Method]

Return the list of supported compress methods.

get_engine_driver/1

get_engine_driver(Engine_Name) -> Driver_Name

Return the port driver name associated to the given engine.

get_engine_names/0

get_engine_names() -> [Engine_Name]

Return the list of compression engines.

get_engine_names/1

get_engine_names(Compress_Method) -> [Engine_Name]

Return the list of compression engines which support the given compress method.

The list is sorted from the most to the least prefered engine.

get_prefered_engine_name/1

get_prefered_engine_name(Compress_Method) -> [Engine_Name]

Return the name of the prefered compression engines which support the given compress method.

getopts/2

getopts(Compress_socket::Compress_Socket, Options) -> {ok, Option_Values} | {error, posix()}

Sets one or more options for a socket.

is_engine_available/1

is_engine_available(Engine_Name) -> bool()

Tell if Engine_Name is available.

peername/1

peername(Compress_socket::Compress_Socket) -> {ok, {Address, Port}} | {error, posix()}

Returns the address and port for the other end of a connection.

recv/1

recv(Compress_Socket) -> {ok, Orig_Packet} | {error, Reason}

Receive data over a compressed connection.

recv/2

recv(Compress_socket::Compress_Socket, Timeout) -> {ok, Orig_Packet} | {error, Reason}

Receive data over a compressed connection.

recv_data/2

recv_data(Compress_socket::Compress_Socket, Packet) -> {ok, Orig_Packet} | {error, Reason}

Uncompressed already received data.

register_engine/3

register_engine(Name, Driver, Compress_Methods) -> ok

Add a new compression engine.

register_engine/4

register_engine(Name, Driver_Path, Driver, Compress_Methods) -> ok

Add a new compression engine.

send/2

send(Compress_socket::Compress_Socket, Packet::Orig_Packet) -> ok | {error, Reason}

Send Orig_Packet over a compressed connection.

setopts/2

setopts(Compress_socket::Compress_Socket, Options) -> ok | {error, posix()}

Sets one or more options for a socket.

sockname/1

sockname(Compress_socket::Compress_Socket) -> {ok, {Address, Port}} | {error, posix()}

Returns the local address and port number for a socket.


Generated by EDoc, Jan 21 2011, 01:43:51.