| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- use futures::channel::oneshot::Receiver;
- use crate::{ReplyMessage, RequestMessage, Result, RpcOnWire};
- pub(crate) mod junk_server;
- pub(crate) fn make_aborting_rpc<C: Into<String>, S: Into<String>>(
- client: C,
- server: S,
- ) -> (RpcOnWire, Receiver<Result<ReplyMessage>>) {
- make_rpc(client, server, junk_server::JunkRpcs::Aborting, &[])
- }
- pub(crate) fn make_echo_rpc<C: Into<String>, S: Into<String>>(
- client: C,
- server: S,
- data: &[u8],
- ) -> (RpcOnWire, Receiver<Result<ReplyMessage>>) {
- make_rpc(client, server, junk_server::JunkRpcs::Echo, data)
- }
- pub(crate) fn make_rpc<C: Into<String>, S: Into<String>>(
- client: C,
- server: S,
- service_method: junk_server::JunkRpcs,
- data: &[u8],
- ) -> (RpcOnWire, Receiver<Result<ReplyMessage>>) {
- let (tx, rx) = futures::channel::oneshot::channel();
- (
- RpcOnWire {
- client: client.into(),
- server: server.into(),
- service_method: service_method.name(),
- request: RequestMessage::copy_from_slice(data),
- reply_channel: tx,
- #[cfg(feature = "tracing")]
- trace: crate::tracing::TraceHolder::make(),
- },
- rx,
- )
- }
|