The Simple Weather Module

The next module we’re going to examine could be considered
something of a “service.” The Simple Weather module is the module
that contains all of the logic necessary to retrieve and parse the
data from the Yahoo! Weather RSS feed. Although
Simple Weather contains three Java classes and one JUnit test, it is
going to present a single component,
WeatherService, to both the Simple Web
Application and the Simple Command-line Utility. Very often an
enterprise project will contain several API modules
that contain critical business logic or logic that interacts with
external systems. A banking system might have a module that retrieves
and parses data from a third-party data provider, and a system to
display sports scores might interact with an XML
feed that presents real-time scores for basketball or soccer. In Example 7-5, this module
encapsulates all of the network activity and XML
parsing that is involved in the interaction with Yahoo! Weather. Other
modules can depend on this module and simply call out to the
retrieveForecast()
method on WeatherService, which takes a zip
code as an argument and which returns a Weather
object.