Customizing Storm spouts
You have explored and understood WordCount
topology provided by the Storm-starter project in previous chapters. Now it's time we move on to the next step, the do it yourself journey with Storm; so let's take up the next leap and do some exciting stuff with our own spouts that read from various sources.
Creating FileSpout
Here we will create our own spout to read the events or tuples from a file source and emit them into the topology; we would substitute spout in place of RandomSentenceSpout
we used in the WordCount
topology in the previous chapter.
To start, copy the project we created in Chapter 2, Getting Started with Your First Topology, into a new project and make the following changes in RandomSentenceSpout
to make a new class called FileSpout
within the Storm-starter project.
Now we will make changes in FileSpout
so that it reads sentences from a file as shown in the following code:
public class FileSpout extends BaseRichSpout { //declaration section...