Salve a tutti,
avrei bisogno di usare una casella di posta come fonte per un ItemReader all'interno di un processo Spring Batch. Quello che vorrei ottenere è: verifico se ci sono nuove email, se sì, salva in un database e poi fai delle operazioni. Ho già scritto una classe che riceve le email:

codice:
 public ImapMailReceiver()
    { 
        ApplicationContext context = new ClassPathXmlApplicationContext("config.xml");

        DirectChannel inputChannel = context.getBean("mailChannel", DirectChannel.class);
        inputChannel.subscribe(new MessageHandler()
        {
            @Override
            public void handleMessage(Message<?> message) throws org.springframework.integration.MessagingException
            {
                 // qui ho il codice che legge la mail e mi estrae le informazioni che mi servono
            }
        });
    }
Nel file config.xml c'è questo pezzo:
codice:
        <int:channel id="mailChannel" />
        <mail:inbound-channel-adapter id="mailReceiver" 
                   store-uri="imap://DATI_DI_ACCESSO_CHE_OMETTO:143/Inbox/TEST_IN"
                   should-delete-messages="false" 
                   should-mark-messages-as-read="true"
                   channel="mailChannel" 
                   java-mail-properties="javaMailProperties"
                   mail-filter-expression="subject matches '\u0023\u0023SMS\u0023\u0023 .*'">  
								   
                   <int:poller max-messages-per-poll="1" fixed-rate="15000" />
	
        </mail:inbound-channel-adapter>
Il mio problema è che non so come collegare tutto questo in un flusso batch reader-processor-writer. Nel senso, leggo l'email.. ma come la passo al processor? La mia classe non è un reader e non saprei come trasformare il tutto in un reader
Magari è una banalità dovuta al fatto che è la prima volta che uso Spring Batch, cosa mi sfugge? Grazie