public void run()

in taverna-interaction-activity/src/main/java/org/apache/taverna/activities/interaction/FeedReader.java [50:103]


	public void run() {
		try {
			final Parser parser = new FOMParser();
			Date lastCheckedDate = new Date();
			while (true) {
				try {
					sleep(5000);
				} catch (final InterruptedException e1) {
					logger.error(e1);
				}
				InputStream openStream = null;
				try {
					final Date newLastCheckedDate = new Date();
					final URL url = getInteractionPreference().getFeedUrl();
					openStream = url.openStream();
					final Document<Feed> doc = parser.parse(openStream,
							url.toString());
					final Feed feed = doc.getRoot().sortEntriesByEdited(true);

					for (final Entry entry : feed.getEntries()) {

						Date d = entry.getEdited();
						if (d == null) {
							d = entry.getUpdated();
						}
						if (d == null) {
							d = entry.getPublished();
						}
						 if (d.before(lastCheckedDate)) {
						 break;
						 }
						this.considerEntry(entry);
					}
					lastCheckedDate = newLastCheckedDate;
				} catch (final MalformedURLException e) {
					logger.error(e);
				} catch (final ParseException e) {
					logger.error(e);
				} catch (final IOException e) {
					logger.error(e);
				} finally {
					try {
						if (openStream != null) {
							openStream.close();
						}
					} catch (final IOException e) {
						logger.error(e);
					}
				}
			}
		} catch (final Exception e) {
			logger.error(e);
		}
	}