[−][src]Struct parsec_interface::requests::request::Request
Representation of the request wire format.
Request body consists of RequestBody
object holding a collection of bytes.
Interpretation of said bytes is deferred to the a converter which can handle the
content_type
defined in the header.
Auth field is stored as a RequestAuth
object. A parser that can handle the auth_type
specified in the header is needed to authenticate the request.
Fields
header: RequestHeader
body: RequestBody
auth: RequestAuth
Methods
impl Request
[src]
pub fn write_to_stream(self, stream: &mut impl Write) -> Result<()>
[src]
Serialise request and write it to given stream.
Request header is first converted to its raw format before serialization.
Errors
- if an IO operation fails while writing any of the subfields of the request,
ResponseStatus::ConnectionError
is returned. - if encoding any of the fields in the header fails,
ResponseStatus::InvalidEncoding
is returned.
pub fn read_from_stream(
stream: &mut impl Read,
body_len_limit: usize
) -> Result<Request>
[src]
stream: &mut impl Read,
body_len_limit: usize
) -> Result<Request>
Deserialise request from given stream.
Request header is parsed from its raw form, ensuring that all fields are valid.
The body_len_limit
parameter allows the interface client to reject requests that are
longer than a predefined limit. The length limit is in bytes.
Errors
- if reading any of the subfields (header, body or auth) fails, the corresponding
ResponseStatus
will be returned. - if the request body size specified in the header is larger than the limit passed as
a parameter,
RequestBodyExceedsLimit
will be returned.
Trait Implementations
impl Debug for Request
[src]
impl PartialEq<Request> for Request
[src]
impl StructuralPartialEq for Request
[src]
Auto Trait Implementations
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnwindSafe for Request
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,