1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
use std::env::temp_dir;

use spring_batch_rs::{
    core::step::{Step, StepBuilder},
    error::BatchError,
    item::{
        fake::person_reader::{Person, PersonReaderBuilder},
        json::json_writer::JsonItemWriterBuilder,
    },
};

fn main() -> Result<(), BatchError> {
    let reader = PersonReaderBuilder::new().number_of_items(100).build();

    let path = temp_dir().join("example-fake-person.json");

    let writer = JsonItemWriterBuilder::new()
        .indent(b"  ")
        .pretty_formatter(true)
        .from_path(path);

    let step: Step<Person, Person> = StepBuilder::new()
        .reader(&reader)
        .writer(&writer)
        .chunk(10)
        .build();

    step.execute();

    Ok(())
}