public <P> FileWritingMessageHandlerSpec file(Function<Message<P>, ?> directoryFunction) { return Files.outboundAdapter(directoryFunction); }
/** * The {@link FileSplitterSpec} builder factory method with {@code iterator} flag specified. * @param iterator the {@code boolean} flag to specify the {@code iterator} mode or not. * @return the {@link FileSplitterSpec} builder. * @since 1.1 */ public static FileSplitterSpec splitter(boolean iterator) { return splitter(iterator, false); }
/** * Factory for the {@link FileInboundChannelAdapterSpec} * @param directory the based directory to poll * @param receptionOrderComparator the {@link Comparator} to order the files * in the internal queue * @return the FileInboundChannelAdapterSpec instance */ public FileInboundChannelAdapterSpec file(File directory, Comparator<File> receptionOrderComparator) { return Files.inboundAdapter(directory, receptionOrderComparator); }
@Bean public IntegrationFlow fileSplitterAggregator() { return IntegrationFlows .from(Files.inboundAdapter(new File("/tmp/in")) .autoCreateDirectory(true) .patternFilter("*.txt"), e -> e.poller(Pollers.fixedDelay(5000))) .split(Files.splitter() .markers() .applySequence(true)) .filter(p -> !(p instanceof FileSplitter.FileMarker), e -> e.discardChannel("aggregatorChannel")) .<String, Name>transform(Name::new) .<Name>filter(p -> !p.getValue().startsWith("X")) .channel("aggregatorChannel") .aggregate(a -> a.processor(new FileMarkerAggregator())) .<List<Name>, Names>transform(Names::new) .transform(Transformers.marshaller(jaxbMarshaller(), new ResultToStringTransformer())) .handle(Files.outboundAdapter("'/tmp/out'") .fileNameGenerator(m -> m .getHeaders() .get(FileHeaders.FILENAME, String.class) .replace(".txt", ".xml")) .autoCreateDirectory(true)) .get(); }
@Bean public IntegrationFlow fileToFile() { return IntegrationFlows.from(Files.inboundAdapter(new File("/tmp/in")) .autoCreateDirectory(true) .patternFilter("*.txt"), e -> e.poller(Pollers.fixedDelay(5000))) .transform(Transformers.fileToString()) .transform("payload.replaceAll('\r\n', '\n')") .handle(Files.outboundAdapter("'/tmp/out'") .autoCreateDirectory(true)) .get(); }
public FileWritingMessageHandlerSpec fileGateway(String directoryExpression) { return Files.outboundGateway(directoryExpression); }
public TailAdapterSpec tail(File file) { return Files.tailAdapter(file); }
@Bean public IntegrationFlow fileToFile() { return IntegrationFlows.from(Files.inboundAdapter(new File("/tmp/in")) .autoCreateDirectory(true) .patternFilter("*.txt"), e -> e.poller(Pollers.fixedDelay(5000))) .transform(Transformers.fileToString()) .transform("payload.replaceAll('\r\n', '\n')") .publishSubscribeChannel(c -> c .subscribe(s -> s.handle(Files.outboundAdapter("'/tmp/out'") .autoCreateDirectory(true))) .subscribe(s -> s.log(LoggingHandler.Level.WARN, null, "headers['file_originalFile'].absolutePath + ' transferred'"))) .get(); }
public FileWritingMessageHandlerSpec fileGateway(File destinationDirectory) { return Files.outboundGateway(destinationDirectory); }
public TailAdapterSpec tail(File file) { return Files.tailAdapter(file); }
public FileWritingMessageHandlerSpec file(String directoryExpression) { return Files.outboundAdapter(directoryExpression); }
/** * The {@link FileSplitterSpec} builder factory method with {@code iterator} flag specified. * @param iterator the {@code boolean} flag to specify the {@code iterator} mode or not. * @return the {@link FileSplitterSpec} builder. * @since 1.1 */ public static FileSplitterSpec splitter(boolean iterator) { return splitter(iterator, false); }
/** * Factory for the {@link FileInboundChannelAdapterSpec} * @param directory the based directory to poll * @param receptionOrderComparator the {@link Comparator} to order the files * in the internal queue * @return the FileInboundChannelAdapterSpec instance */ public FileInboundChannelAdapterSpec file(File directory, Comparator<File> receptionOrderComparator) { return Files.inboundAdapter(directory, receptionOrderComparator); }
public <P> FileWritingMessageHandlerSpec fileGateway(Function<Message<P>, ?> directoryFunction) { return Files.outboundGateway(directoryFunction); }
public <P> FileWritingMessageHandlerSpec file(Function<Message<P>, ?> directoryFunction) { return Files.outboundAdapter(directoryFunction); }
/** * The {@link FileSplitterSpec} builder factory method with default arguments. * @return the {@link FileSplitterSpec} builder. * @since 1.1 */ public static FileSplitterSpec splitter() { return splitter(true); }
public static FileInboundChannelAdapterSpec inboundAdapter(File directory) { return inboundAdapter(directory, null); }
public FileWritingMessageHandlerSpec fileGateway(File destinationDirectory) { return Files.outboundGateway(destinationDirectory); }
public FileWritingMessageHandlerSpec file(File destinationDirectory) { return Files.outboundAdapter(destinationDirectory); }
/** * The {@link FileSplitterSpec} builder factory method with default arguments. * @return the {@link FileSplitterSpec} builder. * @since 1.1 */ public static FileSplitterSpec splitter() { return splitter(true); }