Example usage for org.springframework.integration.file.filters CompositeFileListFilter addFilter

List of usage examples for org.springframework.integration.file.filters CompositeFileListFilter addFilter

Introduction

In this page you can find the example usage for org.springframework.integration.file.filters CompositeFileListFilter addFilter.

Prototype

public CompositeFileListFilter<F> addFilter(FileListFilter<F> filter) 

Source Link

Usage

From source file:com.create.application.configuration.IntegrationConfiguration.java

@Bean
@InboundChannelAdapter(value = "inboundFileChannel", poller = @Poller(cron = "${ticket.poller.cron}"))
public MessageSource<File> fileMessageSource(@Value("${ticket.poller.path}") final String path,
        @Value("${ticket.poller.fileMask}") final String fileMask) {
    final FileReadingMessageSource source = new FileReadingMessageSource();
    final CompositeFileListFilter<File> compositeFileListFilter = new CompositeFileListFilter<>();
    final SimplePatternFileListFilter simplePatternFileListFilter = new SimplePatternFileListFilter(fileMask);
    final AcceptOnceFileListFilter<File> acceptOnceFileListFilter = new AcceptOnceFileListFilter<>();
    compositeFileListFilter.addFilter(simplePatternFileListFilter);
    compositeFileListFilter.addFilter(acceptOnceFileListFilter);
    source.setFilter(compositeFileListFilter);
    source.setDirectory(new File(path));
    return source;
}

From source file:org.springframework.integration.file.config.FileReadingMessageSourceFactoryBean.java

private void initSource() {
    synchronized (this.initializationMonitor) {
        if (this.source != null) {
            return;
        }/*from  w  w  w.  j a va 2 s . c  o  m*/
        boolean comparatorSet = this.comparator != null;
        boolean queueSizeSet = this.queueSize != null;
        if (comparatorSet) {
            if (queueSizeSet) {
                logger.warn("'comparator' and 'queueSize' are mutually exclusive. Ignoring 'queueSize'");
            }
            this.source = new FileReadingMessageSource(this.comparator);
        } else if (queueSizeSet) {
            this.source = new FileReadingMessageSource(queueSize);
        } else {
            this.source = new FileReadingMessageSource();
        }
        this.source.setDirectory(this.directory);
        if (this.scanner != null) {
            this.source.setScanner(this.scanner);
        }
        if (this.filter != null) {
            if (this.locker == null) {
                this.source.setFilter(this.filter);
            } else {
                CompositeFileListFilter<File> compositeFileListFilter = new CompositeFileListFilter<File>();
                compositeFileListFilter.addFilter(this.filter);
                compositeFileListFilter.addFilter(this.locker);
                this.source.setFilter(compositeFileListFilter);
                this.source.setLocker(locker);
            }
        }
        if (this.scanEachPoll != null) {
            this.source.setScanEachPoll(this.scanEachPoll);
        }
        if (this.autoCreateDirectory != null) {
            this.source.setAutoCreateDirectory(this.autoCreateDirectory);
        }
        this.source.afterPropertiesSet();
    }
}