API Reference

FuseExchangeProtocol

FuseExchangeProtocol.json_popFunction
json_pop(client::Jedis.Client, session_id::String, service_name::String, whoami::Symbol; timeout::Float64, error_on_timeout::Bool=true)

Pops and deserializes JSON data from a Redis list, using a key derived from sessionid, servicename, and whoami

source
FuseExchangeProtocol.json_pushFunction
json_push(client::Jedis.Client, session_id::String, service_name::String, whoami::Symbol; data...)

Pushes serialized JSON data into a Redis list, using a key derived from sessionid, servicename, and whoami

source
FuseExchangeProtocol.negotiate_serviceFunction
negotiate_service(client::Jedis.Client, session_id::String, service_name::String)

Initializes service negotiation by cleaning up previous keys and publishing a request on a Redis channel

source
FuseExchangeProtocol.raw_popFunction
raw_pop(client::Jedis.Client, session_id::String, service_name::String, whoami::Symbol; timeout::Float64, error_on_timeout::Bool=true)

Pops raw data from a Redis list, key determined by sessionid, servicename, and whoami

source
FuseExchangeProtocol.raw_pushFunction
raw_push(client::Jedis.Client, session_id::String, service_name::String, whoami::Symbol, raw_data::Any)

Pushes raw data into a Redis list, key determined by sessionid, servicename, and whoami

source
FuseExchangeProtocol.register_serviceFunction
register_service(client::Jedis.Client, service_name::String, service_function::Function; timeout::Float64=10.0)

Registers a service by subscribing to a Redis channel and invoking the service_function when a message is received

The service_function must have the following call signature:

service_function(client::Jedis.Client, session_id::String, service_name::String; timeout::Float64)
source