25 lines
524 B
Plaintext
25 lines
524 B
Plaintext
module @{module}
|
|
|
|
import freeflowuniverse.herolib.data.rpcwebsocket
|
|
import freeflowuniverse.herolib.schemas.jsonrpc
|
|
import log
|
|
import json
|
|
|
|
pub struct @{name}OpenRpcClient {
|
|
mut:
|
|
transport &jsonrpc.IRpcTransportClient
|
|
}
|
|
|
|
@[params]
|
|
pub struct ClientConfig {
|
|
address string
|
|
logger log.Logger
|
|
}
|
|
|
|
pub fn new_ws_client(config ClientConfig) !PetstoreOpenRpcClient {
|
|
mut transport := rpcwebsocket.new_rpcwsclient(config.address, config.logger)!
|
|
spawn transport.run()
|
|
return PetstoreJsonRpcClient {
|
|
transport: transport
|
|
}
|
|
} |