Apache Camel-Datei-Splitter von Beispiel

Ich bin, da wird eine Datei mit numerischen IDs, getrennt durch Zeilenumbrüche ("\n"):

123948
939904
129384
234049

etc. Ich will Kamel zum umwandeln der Datei in eine Instanz der folgenden POJO:

public class IDFile {
    private String fileName;    //The name of the file
    private List<Long> ids;     //All the IDs in the file (123948, 939904, etc.)

    //Constructor, getters/setters, etc.
}

Ich versuche, um zu sehen, wenn ich Camel Splitter Komponente, dies zu tun für mich, aber es fühlt sich an wie ich bin versucht zu zwingen, einen Runden Pflock in ein quadratisches Loch:

<route>
    <from uri="file://input/idfile"/>
    <split streaming="true">
        <tokenize token="\n" />
        <to uri="bean://idfileProcessor?method=process"/>
    </split>
</route>

Oben sieht aus wie es aufgeteilt würde meine Datei in ein List<Long>, aber ich brauche den Namen der Datei im Zusammenhang mit der Liste als gut. Irgendwelche Ideen?

tut idfileProcessor Karten zu IDFile irgendwo. denn wie es aussieht seine einem Prozessor. wenn es ist, könnte Sie uns zeigen, wie Sie die Verarbeitung der Börse?
Danke @Ashish (+1) - ich denke, mein denken war, die <split> führen Sie die Transformation für mich, so dass durch die Zeit, die Botschaft zu idfileProcessor (ja, ein Kamel Processor), ich kann nur extrahieren Sie die IDFile POJO aus dem exchange-etwa so: IDFile idFile = (IDFile)exchange.getIn().getBody();. Die idfileProcessor dann könnte process die IDFile Instanz. Sorry für die Verwirrung!

InformationsquelleAutor IAmYourFaja | 2013-12-18

Schreibe einen Kommentar