private void dispatchToChosenTarget()

in taverna-server-webapp/src/main/java/org/apache/taverna/server/master/notification/NotificationEngine.java [64:93]


	private void dispatchToChosenTarget(TavernaRun originator, String scheme,
			String target, Message message) throws Exception {
		try {
			MessageDispatcher d = dispatchers.get(scheme);
			if (d != null && d.isAvailable())
				d.dispatch(originator, message.getTitle(scheme),
						message.getContent(scheme), target);
			else
				log.warn("no such notification dispatcher for " + scheme);
		} catch (URISyntaxException e) {
			// See if *someone* will handle the message
			Exception e2 = null;
			for (MessageDispatcher d : dispatchers.values())
				try {
					if (d.isAvailable()) {
						d.dispatch(originator, message.getTitle(d.getName()),
								message.getContent(d.getName()), scheme + ":"
										+ target);
						return;
					}
				} catch (Exception ex) {
					if (log.isDebugEnabled())
						log.debug("failed in pseudo-directed dispatch of "
								+ scheme + ":" + target, ex);
					e2 = ex;
				}
			if (e2 != null)
				throw e2;
		}
	}