In this chapter, we’ll build a news-gathering application using Quartz, an open source Java job scheduler. Quartz, which is available at http://www.quartzscheduler.org/, provides sophisticated timing and tracking of web service data retrieval from different sources. Some of these have been covered in other chapters of this book, including Amazon, Google, eBay, and RSS. In effect, you will build a data aggregator— a system that pools and caches data from the Internet, presenting it in a coherent whole.
This project leverages the code used in prior chapters to access remote web services—in particular, the web service interfaces to Amazon, Google, and eBay as shown in Chapter 4. Once you have established communication with a web service, you can often leverage that connectivity in new ways, presenting the information to users in different ways or even adding entirely new lines of business.
The initial user interface for the aggregator is shown in
Figure 8-1. To add a data
source to monitor, the user clicks on the
As you can see in Figure 8-2, a form appears that allows a user to define a data source that should be watched by the application (hence the term "watcher”). The user can specify what precise data should be retrieved and how frequently it should be updated.