agave-jobs/jobs-core/src/main/java/org/iplantc/service/jobs/managers/JobRequestNotificationProcessor.java
/**
	 * Processes a {@link String} passed in with a job request as a 
	 * notification configuration. Acceptable values are email addresses,
	 * URL, phone numbers, and agave uri. Anything else will throw 
	 * an exception.
	 *  
	 * @param callbackUrl the url callback when just strings are given as the notification property in url form submissions
	 * @throws NotificationException if an invalid callback URL value is given
	 */
Processes a  String passed in with a job request as a
notification configuration. Acceptable values are email addresses,
URL, phone numbers, and agave uri. Anything else will throw
an exception.

@param callbackUrl the url callback when just strings are given as the notification property in url form submissions
@throws NotificationException if an invalid callback URL value is given
Processes a String passed in with a job request as a notification configuration . Acceptable values are email addresses URL phone numbers and agave uri . Anything else will throw an exception . @param callbackUrl the url callback when just strings are given as the notification property in url form submissions @throws NotificationException if an invalid callback URL value is given
public void process(String callbackUrl) throws NotificationException {
		ObjectMapper mapper = new ObjectMapper();
		if (StringUtils.isNotBlank(callbackUrl)) {
			ArrayNode jsonNotifications = mapper.createArrayNode();
			for (JobEventType eventType : List.of(FINISHED, FAILED, STOPPED)) {
				jsonNotifications.addObject()
						.put("event", eventType.name())
						.put("owner", getUsername())
						.put("associatedUuid", getJob().getUuid())
						.put("url", callbackUrl)
						.put("persistent", false);
			}
			process(jsonNotifications);
		}
	}
public void process ( String callbackUrl ) throws NotificationException { ObjectMapper mapper = new ObjectMapper ( ) ; if ( StringUtils . isNotBlank ( callbackUrl ) ) { ArrayNode jsonNotifications = mapper . createArrayNode ( ) ; for ( JobEventType eventType : List . of ( FINISHED , FAILED , STOPPED ) ) { jsonNotifications . addObject ( ) . put ( "event" , eventType . name ( ) ) . put ( "owner" , getUsername ( ) ) . put ( "associatedUuid" , getJob ( ) . getUuid ( ) ) . put ( "url" , callbackUrl ) . put ( "persistent" , false ) ; } process ( jsonNotifications ) ; } }
Processes a {@link String} passed in with a job request as a
 notification configuration.
Processes a { @link String } passed in with a job request as a notification configuration .