19 package org.sleuthkit.autopsy.ingest;
21 import java.util.List;
22 import java.util.Optional;
29 final class DataArtifactIngestPipeline
extends IngestTaskPipeline<DataArtifactIngestTask> {
40 DataArtifactIngestPipeline(IngestJobPipeline ingestJobPipeline, List<IngestModuleTemplate> moduleTemplates) {
41 super(ingestJobPipeline, moduleTemplates);
45 Optional<PipelineModule<DataArtifactIngestTask>> acceptModuleTemplate(IngestModuleTemplate
template) {
46 Optional<IngestTaskPipeline.PipelineModule<DataArtifactIngestTask>> module = Optional.empty();
47 if (
template.isDataArtifactIngestModuleTemplate()) {
48 DataArtifactIngestModule ingestModule =
template.createDataArtifactIngestModule();
49 module = Optional.of(
new DataArtifactIngestPipelineModule(ingestModule,
template.getModuleName()));
55 void prepareForTask(DataArtifactIngestTask task)
throws IngestTaskPipelineException {
59 void cleanUpAfterTask(DataArtifactIngestTask task)
throws IngestTaskPipelineException {
66 static final class DataArtifactIngestPipelineModule extends IngestTaskPipeline.PipelineModule<DataArtifactIngestTask> {
68 private final DataArtifactIngestModule module;
77 DataArtifactIngestPipelineModule(DataArtifactIngestModule module, String displayName) {
78 super(module, displayName);
83 void executeTask(IngestJobPipeline ingestJobPipeline, DataArtifactIngestTask task)
throws IngestModuleException {
84 DataArtifact artifact = task.getDataArtifact();
85 module.process(artifact);