pub struct RestAdapter { /* private fields */ }Expand description
REST adapter for HTTP requests
Handles REST/HTTP protocol-specific request/response transformation.
Implementations§
Source§impl RestAdapter
impl RestAdapter
Sourcepub fn route(&mut self, method: &str, path: &str, handler: &str) -> &mut Self
pub fn route(&mut self, method: &str, path: &str, handler: &str) -> &mut Self
Register a REST route
Sourcepub fn match_route(&self, method: &str, path: &str) -> Option<&RestRoute>
pub fn match_route(&self, method: &str, path: &str) -> Option<&RestRoute>
Find a matching route for the given method and path
Sourcepub fn parse_request(
&self,
request: &str,
) -> Result<(String, String, Option<String>), String>
pub fn parse_request( &self, request: &str, ) -> Result<(String, String, Option<String>), String>
Parse an HTTP request string
Format: METHOD /path [body]
Example: “GET /users”, “POST /users {"name":"John"}”
Sourcepub fn format_response(&self, status: u16, body: &str) -> String
pub fn format_response(&self, status: u16, body: &str) -> String
Format an HTTP response
Sourcepub fn build_request(
&self,
method: &str,
path: &str,
_body: Option<&str>,
_headers: Option<&str>,
) -> RestRequest
pub fn build_request( &self, method: &str, path: &str, _body: Option<&str>, _headers: Option<&str>, ) -> RestRequest
Build a simulated HTTP request for testing
In a real implementation, this would parse actual HTTP requests. For MVP, we use a simple string-based representation.
Trait Implementations§
Source§impl Default for RestAdapter
impl Default for RestAdapter
Auto Trait Implementations§
impl Freeze for RestAdapter
impl RefUnwindSafe for RestAdapter
impl Send for RestAdapter
impl Sync for RestAdapter
impl Unpin for RestAdapter
impl UnwindSafe for RestAdapter
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request