mirror of
https://github.com/quickwit-oss/tantivy.git
synced 2026-05-30 23:20:40 +00:00
Moved directory errors to a submodule
This commit is contained in:
@@ -2,7 +2,7 @@ use std::marker::Send;
|
||||
use std::marker::Sync;
|
||||
use std::fmt;
|
||||
use std::path::Path;
|
||||
use directory::{FileError, OpenWriteError};
|
||||
use directory::error::{FileError, OpenWriteError};
|
||||
use directory::{ReadOnlySource, WritePtr};
|
||||
use std::result;
|
||||
use std::io;
|
||||
|
||||
32
src/directory/error.rs
Normal file
32
src/directory/error.rs
Normal file
@@ -0,0 +1,32 @@
|
||||
use std::path::PathBuf;
|
||||
use std::io;
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum OpenWriteError {
|
||||
FileAlreadyExists(PathBuf),
|
||||
IOError(io::Error),
|
||||
}
|
||||
|
||||
impl From<io::Error> for OpenWriteError {
|
||||
fn from(err: io::Error) -> OpenWriteError {
|
||||
OpenWriteError::IOError(err)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum FileError {
|
||||
FileDoesNotExist(PathBuf),
|
||||
IOError(io::Error),
|
||||
}
|
||||
|
||||
impl From<io::Error> for FileError {
|
||||
fn from(err: io::Error) -> FileError {
|
||||
FileError::IOError(err)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum OpenDirectoryError {
|
||||
DoesNotExist,
|
||||
NotADirectory,
|
||||
}
|
||||
@@ -15,7 +15,7 @@ use directory::ReadOnlySource;
|
||||
use directory::WritePtr;
|
||||
use std::io::BufWriter;
|
||||
use std::fs::OpenOptions;
|
||||
use directory::{OpenWriteError, FileError, OpenDirectoryError};
|
||||
use directory::error::{OpenWriteError, FileError, OpenDirectoryError};
|
||||
use std::result;
|
||||
use common::make_io_err;
|
||||
|
||||
|
||||
@@ -3,48 +3,15 @@ mod ram_directory;
|
||||
mod directory;
|
||||
mod read_only_source;
|
||||
mod shared_vec_slice;
|
||||
pub mod error;
|
||||
|
||||
use std::io::{Seek, Write};
|
||||
use std::io;
|
||||
|
||||
use std::path::PathBuf;
|
||||
|
||||
pub use self::read_only_source::ReadOnlySource;
|
||||
pub use self::directory::Directory;
|
||||
pub use self::ram_directory::RAMDirectory;
|
||||
pub use self::mmap_directory::MmapDirectory;
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum OpenWriteError {
|
||||
FileAlreadyExists(PathBuf),
|
||||
IOError(io::Error),
|
||||
}
|
||||
|
||||
impl From<io::Error> for OpenWriteError {
|
||||
fn from(err: io::Error) -> OpenWriteError {
|
||||
OpenWriteError::IOError(err)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum FileError {
|
||||
FileDoesNotExist(PathBuf),
|
||||
IOError(io::Error),
|
||||
}
|
||||
|
||||
impl From<io::Error> for FileError {
|
||||
fn from(err: io::Error) -> FileError {
|
||||
FileError::IOError(err)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum OpenDirectoryError {
|
||||
DoesNotExist,
|
||||
NotADirectory,
|
||||
}
|
||||
|
||||
|
||||
pub trait SeekableWrite: Seek + Write {}
|
||||
impl<T: Seek + Write> SeekableWrite for T {}
|
||||
|
||||
@@ -54,7 +21,6 @@ impl<T: Seek + Write> SeekableWrite for T {}
|
||||
/// and Seek.
|
||||
pub type WritePtr = Box<SeekableWrite>;
|
||||
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
use directory::{Directory, ReadOnlySource};
|
||||
use std::io::{Cursor, Write, Seek, SeekFrom};
|
||||
use std::io;
|
||||
use std::fmt;
|
||||
use std::sync::{Arc, RwLock};
|
||||
use std::collections::HashMap;
|
||||
use std::fmt;
|
||||
use std::io;
|
||||
use std::io::{Cursor, Write, Seek, SeekFrom};
|
||||
use std::path::{Path, PathBuf};
|
||||
use directory::{OpenWriteError, FileError};
|
||||
use directory::WritePtr;
|
||||
use std::result;
|
||||
use std::sync::{Arc, RwLock};
|
||||
use common::make_io_err;
|
||||
use directory::{Directory, ReadOnlySource};
|
||||
use directory::error::{OpenWriteError, FileError};
|
||||
use directory::WritePtr;
|
||||
use super::shared_vec_slice::SharedVecSlice;
|
||||
|
||||
/// Writer associated to the `RAMDirectory`
|
||||
@@ -108,7 +108,7 @@ impl InnerDirectory {
|
||||
fn delete(&self, path: &Path) -> result::Result<(), FileError> {
|
||||
self.0
|
||||
.write()
|
||||
.map_err(|err| {
|
||||
.map_err(|_| {
|
||||
let io_err = make_io_err(format!("Failed to acquire write lock for the directory, when trying to delete {:?}", path));
|
||||
FileError::IOError(io_err)
|
||||
})
|
||||
|
||||
@@ -3,7 +3,7 @@ use std::result;
|
||||
use std::path::PathBuf;
|
||||
use std::error;
|
||||
use std::sync::PoisonError;
|
||||
use directory::{FileError, OpenWriteError, OpenDirectoryError};
|
||||
use directory::error::{FileError, OpenWriteError, OpenDirectoryError};
|
||||
|
||||
#[derive(Debug)]
|
||||
pub enum Error {
|
||||
|
||||
Reference in New Issue
Block a user