Returns the [`CompressionCodec`] if any
(&self)
| 104 | |
| 105 | /// Returns the [`CompressionCodec`] if any |
| 106 | pub fn compression(&self) -> Result<Option<CompressionCodec>, AvroError> { |
| 107 | let v = self.get(CODEC_METADATA_KEY); |
| 108 | match v { |
| 109 | None | Some(b"null") => Ok(None), |
| 110 | Some(b"deflate") => Ok(Some(CompressionCodec::Deflate)), |
| 111 | Some(b"snappy") => Ok(Some(CompressionCodec::Snappy)), |
| 112 | Some(b"zstandard") => Ok(Some(CompressionCodec::ZStandard)), |
| 113 | Some(b"bzip2") => Ok(Some(CompressionCodec::Bzip2)), |
| 114 | Some(b"xz") => Ok(Some(CompressionCodec::Xz)), |
| 115 | Some(v) => Err(AvroError::ParseError(format!( |
| 116 | "Unrecognized compression codec \'{}\'", |
| 117 | String::from_utf8_lossy(v) |
| 118 | ))), |
| 119 | } |
| 120 | } |
| 121 | |
| 122 | /// Returns the `Schema` if any |
| 123 | pub(crate) fn schema(&self) -> Result<Option<Schema<'_>>, AvroError> { |
no test coverage detected