in backup-core/src/main/java/org/apache/iotdb/backup/core/ImportStarter.java [55:93]
public Disposable start(ImportModel importModel) {
pipeSinkList.clear();
pipeSourceList.clear();
PipelineBuilder builder = new PipelineBuilder();
String fileFloder = importModel.getFileFolder();
if (!fileFloder.endsWith("/") && !fileFloder.endsWith("\\")) {
fileFloder += File.separator;
}
importModel.setFileFolder(fileFloder);
if (importModel.getNeedTimeseriesStructure()) {
PipeSink<TimeSeriesRowModel, TimeSeriesRowModel> iStructureFileSink =
new InStructureFileSink("structure sink");
// pipeSinkList.add(iStructureFileSink);
builder
.source(new InStructureSource("structure source"))
.channel(new FieldColumnFormatChannel("structure channel"))
.sink(iStructureFileSink);
}
PipeSink<TimeSeriesRowModel, TimeSeriesRowModel> pipeSink = generateSink(importModel);
pipeSinkList.add(pipeSink);
PipeSource pipeSource = generateSource(importModel);
pipeSourceList.add(pipeSource);
pipeline =
builder
.source(() -> generateSource(importModel))
.channel(() -> generateChannel(importModel))
.sink(pipeSink)
.build()
.withContext(
() -> {
PipelineContext context = new PipelineContext();
context.setModel(importModel);
return context;
});
return pipeline.start();
}