Crawling the Web with Java - The showError() and updateStats() Methods
(Page 8 of 15 )
The showError( ) Method The showError( ) method, shown here, displays an error dialog box on the screen with the given message. This method is invoked if any required search options are missing or if there are any problems opening, writing to, or closing the log file.
// Show dialog box with error message.
private void showError(String message) {
JOptionPane.showMessageDialog(this, message, "Error",
JOptionPane.ERROR_MESSAGE);
}
The updateStats( ) Method The updateStats( ) method, shown here, updates the values displayed in the Stats section of the interface:
// Update crawling stats.
private void updateStats(
String crawling, int crawled, int toCrawl, int maxUrls)
{
crawlingLabel2.setText(crawling);
crawledLabel2.setText("" + crawled);
toCrawlLabel2.setText("" + toCrawl);
// Update progress bar.
if (maxUrls == -1) {
progressBar.setMaximum(crawled + toCrawl);
} else {
progressBar.setMaximum(maxUrls);
}
progressBar.setValue(crawled);
matchesLabel2.setText("" + table.getRowCount());
}
First, the crawling results are updated to reflect the current URL being crawled, the number of URLs crawled thus far, and the number of URLs that are left to crawl. Take note that the URLs to Crawl field may be misleading. It displays the number of links that have been aggregated and put in the To Crawl queue, not the difference between the specified maximum URLs and the number of URLs that have been crawled thus far. Notice also that when setText( ) is called with crawled and toCrawl, it is passed an empty string (" ") plus an int value. This is so that Java will convert the int values into String objects, which the setText( ) method requires.
Next, the progress bar is updated to reflect the current progress made toward finishing crawling. If the Max URLs to Crawl text field was left blank, which specifies that crawling should not be capped, the maxUrls variable will have the value –1. In this case, the progress bar’s maximum is set to the number of URLs that have been crawled plus the number of URLs left to crawl. If, on the other hand, a Max URLs to Crawl value was specified, it will be used as the progress bar’s maximum. After establishing the progress bar’s maximum value, its current value is set. The JProgressBar class uses the maximum and current values to calculate the percentage shown in text on the progress bar.
Finally, the Search Matches label is updated to reflect the current number of URLs that contain the specified search string.
Next: The addMatch() and verifyURL() Methods >>
More Java Articles
More By McGraw-Hill/Osborne
|
This article was taken from chapter six of The Art of Java, written by Herbert Schildt and James Holmes (McGraw-Hill, 2004; ISBN: 0596007388). Check it out at your favorite bookstore. Buy this book now.
|
|