diff options
author | Ferris Tseng <ferristseng@fastmail.fm> | 2018-06-27 00:22:50 -0400 |
---|---|---|
committer | Ferris Tseng <ferristseng@fastmail.fm> | 2018-06-27 00:22:50 -0400 |
commit | 148b989784b47a4034ff82be1760e73a1429dbeb (patch) | |
tree | bc9acc23d403c4c5307ad1cf6b4765a94dacdd9c /ipfs-api/src/header.rs | |
parent | 90d3c0a8bb552c249bffb67d20b06869a24bd0a8 (diff) |
get ipfs-api compiling
Diffstat (limited to 'ipfs-api/src/header.rs')
-rw-r--r-- | ipfs-api/src/header.rs | 74 |
1 files changed, 2 insertions, 72 deletions
diff --git a/ipfs-api/src/header.rs b/ipfs-api/src/header.rs index aec3c0a..9943bdb 100644 --- a/ipfs-api/src/header.rs +++ b/ipfs-api/src/header.rs @@ -6,76 +6,6 @@ // copied, modified, or distributed except according to those terms. // -use hyper; -use hyper::header::{self, Header, Raw}; -use std::fmt; +pub use hyper::header::TRAILER; -/// Header that is returned for streaming calls. -/// -/// A `Trailer` header indicates that after a streaming call, there will -/// be some additional information in the response. -/// -#[derive(Debug, Clone, Copy)] -pub enum Trailer { - /// This trailer indicates that an error header will be returned in - /// the stream if there is an error while streaming. - /// - StreamError, -} - -impl Header for Trailer { - fn header_name() -> &'static str { - "Trailer" - } - - fn parse_header(raw: &Raw) -> hyper::Result<Trailer> { - if let Some(bytes) = raw.one() { - let value = String::from_utf8_lossy(bytes); - - match value.as_ref() { - "X-Stream-Error" => Ok(Trailer::StreamError), - _ => Err(hyper::Error::Header), - } - } else { - Err(hyper::Error::Header) - } - } - - fn fmt_header(&self, f: &mut header::Formatter) -> fmt::Result { - let value = match *self { - Trailer::StreamError => "X-Stream-Error", - }; - - f.fmt_line(&value) - } -} - -/// This header is included while streaming if an error occured -/// while streaming the data. -/// -#[derive(Debug, Clone)] -pub struct XStreamError { - pub error: String, -} - -impl Header for XStreamError { - fn header_name() -> &'static str { - "X-Stream-Error" - } - - fn parse_header(raw: &Raw) -> hyper::Result<XStreamError> { - if let Some(bytes) = raw.one() { - let value = String::from_utf8_lossy(bytes); - - Ok(XStreamError { - error: value.into_owned(), - }) - } else { - Err(hyper::Error::Header) - } - } - - fn fmt_header(&self, f: &mut header::Formatter) -> fmt::Result { - f.fmt_line(&self.error) - } -} +pub const X_STREAM_ERROR: &str = "x-stream-error"; |