code: public void registerExecutionListener(final ExecutionListener executionListener) {
  
  		final Integer priority = Integer.valueOf(executionListener.getPriority());
  
  		if (priority.intValue() < 0) {
  			LOG.error("Priority for execution listener " + executionListener.getClass() + " must be non-negative.");
  			return;
  		}
  
  		final ExecutionListener previousValue = this.executionListeners.putIfAbsent(priority, executionListener);
  
  		if (previousValue != null) {
  			LOG.error("Cannot register " + executionListener.getClass() + " as an execution listener. Priority "
  				+ priority.intValue() + " is already taken.");
  		}
  	}
docs: Registers the {@link ExecutionListener} object for this vertex. This object
  will be notified about particular events during the vertex's lifetime.
  
  @param executionListener
  the object to be notified about particular events during the vertex's lifetime