pub struct ProtocolRequest {
pub protocol: Protocol,
pub pattern: MessagePattern,
pub operation: String,
pub path: String,
pub topic: Option<String>,
pub routing_key: Option<String>,
pub partition: Option<i32>,
pub qos: Option<u8>,
pub metadata: HashMap<String, String>,
pub body: Option<Vec<u8>>,
pub client_ip: Option<String>,
}
Expand description
A protocol-agnostic request representation
Fields§
§protocol: Protocol
The protocol this request uses
pattern: MessagePattern
Message pattern for this request
operation: String
Method or operation (e.g., “GET”, “Query.users”, “greeter.SayHello”)
path: String
Path, query name, or service/method name
topic: Option<String>
Topic for pub/sub protocols (MQTT, Kafka)
routing_key: Option<String>
Routing key for message queuing protocols (AMQP, RabbitMQ)
partition: Option<i32>
Partition for partitioned protocols (Kafka)
qos: Option<u8>
Quality of Service level (MQTT: 0, 1, 2)
metadata: HashMap<String, String>
Request metadata (headers, metadata, etc.)
body: Option<Vec<u8>>
Request body/payload as bytes
client_ip: Option<String>
Client IP address if available
Trait Implementations§
Source§impl Clone for ProtocolRequest
impl Clone for ProtocolRequest
Source§fn clone(&self) -> ProtocolRequest
fn clone(&self) -> ProtocolRequest
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ProtocolRequest
impl Debug for ProtocolRequest
Auto Trait Implementations§
impl Freeze for ProtocolRequest
impl RefUnwindSafe for ProtocolRequest
impl Send for ProtocolRequest
impl Sync for ProtocolRequest
impl Unpin for ProtocolRequest
impl UnwindSafe for ProtocolRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more