Skip to content

Commit 046ebd0

Browse files
committed
add impl split
1 parent 10e7a04 commit 046ebd0

File tree

4 files changed

+17
-19
lines changed

4 files changed

+17
-19
lines changed

src/config.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -110,10 +110,10 @@ impl Config {
110110
how:H
111111
) -> Self {
112112
self.appends.push(Mutex::new(Box::new(
113-
FileSplitAppender::new::<RawFile,R,H>(
113+
FileSplitAppender::new::<RawFile>(
114114
file_path,
115-
how,
116-
rolling_type,
115+
Box::new(how),
116+
Box::new(rolling_type),
117117
Box::new(packer),
118118
)
119119
.unwrap(),
@@ -150,7 +150,7 @@ impl Config {
150150
how_pack:H,
151151
) -> Self {
152152
self.appends.push(Mutex::new(Box::new(
153-
FileSplitAppender::new::<F,R,H>(file_path,how_pack, keeper, Box::new(packer)).unwrap(),
153+
FileSplitAppender::new::<F>(file_path, Box::new(how_pack), Box::new(keeper), Box::new(packer)).unwrap(),
154154
)));
155155
self
156156
}

src/plugin/file_loop.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ pub struct FileLoopAppender {
1212
impl FileLoopAppender {
1313
pub fn new(log_file_path: &str, size: LogSize) -> Result<FileLoopAppender, LogError> {
1414
Ok(Self {
15-
file: FileSplitAppender::new::<RawFile,KeepType,HowToPackType>(
15+
file: FileSplitAppender::new::<RawFile>(
1616
log_file_path,
17-
HowToPackType::BySize(size),
18-
KeepType::KeepNum(1),
17+
Box::new(HowToPackType::BySize(size)),
18+
Box::new(KeepType::KeepNum(1)),
1919
Box::new(LogPacker {}),
2020
)?,
2121
})

src/plugin/file_split.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -214,12 +214,10 @@ pub struct FileSplitAppender {
214214
}
215215

216216
impl FileSplitAppender {
217-
pub fn new<F: SplitFile + 'static,
218-
R: Keep + 'static,
219-
H: HowToPack + 'static>(
217+
pub fn new<F: SplitFile + 'static>(
220218
file_path: &str,
221-
how_to_pack: H,
222-
rolling_type: R,
219+
how_to_pack: Box<dyn HowToPack>,
220+
rolling_type: Box<dyn Keep>,
223221
packer: Box<dyn Packer>,
224222
) -> Result<FileSplitAppender, LogError> {
225223
let temp_name = {
@@ -262,7 +260,7 @@ impl FileSplitAppender {
262260
dir_path: dir_path.to_string(),
263261
file: Box::new(file) as Box<dyn SplitFile>,
264262
sender,
265-
how_to_pack: Box::new(how_to_pack),
263+
how_to_pack: how_to_pack,
266264
temp_name,
267265
packer: arc_packer,
268266
})
@@ -456,10 +454,10 @@ impl LogAppender for FileSplitAppender {
456454
}
457455

458456
///spawn an saver thread to save log file or zip file
459-
fn spawn_saver<R: Keep + 'static>(
457+
fn spawn_saver(
460458
temp_name: String,
461459
r: Receiver<LogPack>,
462-
rolling_type: R,
460+
rolling_type: Box<dyn Keep>,
463461
packer: Arc<Box<dyn Packer>>,
464462
) {
465463
std::thread::spawn(move || {

tests/split_test.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ mod test {
33
use fast_log::appender::{Command, FastLogRecord, LogAppender};
44
use fast_log::consts::LogSize;
55
use fast_log::plugin::file_name::FileName;
6-
use fast_log::plugin::file_split::{FileSplitAppender, HowToPackType, Keep, Packer, RawFile, RollingType, SplitFile};
6+
use fast_log::plugin::file_split::{FileSplitAppender, HowToPackType, Keep, Packer, RawFile, RollingType};
77
use fast_log::plugin::packer::LogPacker;
88
use fastdate::DateTime;
99
use log::Level;
@@ -14,10 +14,10 @@ mod test {
1414
#[test]
1515
fn test_send_pack() {
1616
let _ = remove_dir_all("target/test/");
17-
let mut appender = FileSplitAppender::new::<RawFile, RollingType, HowToPackType>(
17+
let mut appender = FileSplitAppender::new::<RawFile>(
1818
"target/test/",
19-
HowToPackType::BySize(LogSize::MB(1)),
20-
RollingType::All,
19+
Box::new(HowToPackType::BySize(LogSize::MB(1))),
20+
Box::new(RollingType::All),
2121
Box::new(LogPacker {}),
2222
)
2323
.unwrap();

0 commit comments

Comments
 (0)