mirror of
https://github.com/dswd/zvault
synced 2025-01-07 12:57:54 +00:00
97 lines
3.7 KiB
Rust
97 lines
3.7 KiB
Rust
use ::prelude::*;
|
|
use super::*;
|
|
|
|
use std::path::{Path, PathBuf};
|
|
use std::io;
|
|
|
|
|
|
quick_error!{
|
|
#[derive(Debug)]
|
|
pub enum BundleDbError {
|
|
List(err: io::Error) {
|
|
cause(err)
|
|
description("Failed to list bundles")
|
|
display("Failed to list bundles: {}", err)
|
|
}
|
|
Io(err: io::Error, path: PathBuf) {
|
|
cause(err)
|
|
context(path: &'a Path, err: io::Error) -> (err, path.to_path_buf())
|
|
description("Failed to read/write bundle")
|
|
display("Failed to read/write bundle {:?}: {}", path, err)
|
|
}
|
|
Decode(err: msgpack::DecodeError, path: PathBuf) {
|
|
cause(err)
|
|
context(path: &'a Path, err: msgpack::DecodeError) -> (err, path.to_path_buf())
|
|
description("Failed to decode bundle header")
|
|
display("Failed to decode bundle header of {:?}: {}", path, err)
|
|
}
|
|
Encode(err: msgpack::EncodeError, path: PathBuf) {
|
|
cause(err)
|
|
context(path: &'a Path, err: msgpack::EncodeError) -> (err, path.to_path_buf())
|
|
description("Failed to encode bundle header")
|
|
display("Failed to encode bundle header of {:?}: {}", path, err)
|
|
}
|
|
WrongHeader(path: PathBuf) {
|
|
description("Wrong header")
|
|
display("Wrong header on bundle {:?}", path)
|
|
}
|
|
WrongVersion(path: PathBuf, version: u8) {
|
|
description("Wrong version")
|
|
display("Wrong version on bundle {:?}: {}", path, version)
|
|
}
|
|
Integrity(bundle: BundleId, reason: &'static str) {
|
|
description("Bundle has an integrity error")
|
|
display("Bundle {:?} has an integrity error: {}", bundle, reason)
|
|
}
|
|
NoSuchBundle(bundle: BundleId) {
|
|
description("No such bundle")
|
|
display("No such bundle: {:?}", bundle)
|
|
}
|
|
NoSuchChunk(bundle: BundleId, id: usize) {
|
|
description("Bundle has no such chunk")
|
|
display("Bundle {:?} has no chunk with that id: {}", bundle, id)
|
|
}
|
|
Decompression(err: CompressionError, path: PathBuf) {
|
|
cause(err)
|
|
context(path: &'a Path, err: CompressionError) -> (err, path.to_path_buf())
|
|
description("Decompression failed")
|
|
display("Decompression failed on bundle {:?}: {}", path, err)
|
|
}
|
|
Compression(err: CompressionError) {
|
|
from()
|
|
cause(err)
|
|
description("Compression failed")
|
|
display("Compression failed: {}", err)
|
|
}
|
|
Decryption(err: EncryptionError, path: PathBuf) {
|
|
cause(err)
|
|
context(path: &'a Path, err: EncryptionError) -> (err, path.to_path_buf())
|
|
description("Decryption failed")
|
|
display("Decryption failed on bundle {:?}: {}", path, err)
|
|
}
|
|
Encryption(err: EncryptionError) {
|
|
from()
|
|
cause(err)
|
|
description("Encryption failed")
|
|
display("Encryption failed: {}", err)
|
|
}
|
|
Remove(err: io::Error, bundle: BundleId) {
|
|
cause(err)
|
|
description("Failed to remove bundle")
|
|
display("Failed to remove bundle {}", bundle)
|
|
}
|
|
Writer(err: BundleWriterError) {
|
|
from()
|
|
cause(err)
|
|
description("Failed to write new bundle")
|
|
display("Bundle db error: failed to write new bundle\n\tcaused by: {}", err)
|
|
}
|
|
Reader(err: BundleReaderError) {
|
|
from()
|
|
cause(err)
|
|
description("Failed to read bundle")
|
|
display("Bundle db error: failed to read a bundle\n\tcaused by: {}", err)
|
|
}
|
|
}
|
|
}
|