public void notifyExternalListeners(final List<PipelineEventListener> externalListeners, final PipelineEvent event) { externalListeners.forEach(listener -> { try { if (event instanceof BeforePipelineExecutionEvent) { listener.beforePipelineExecution((BeforePipelineExecutionEvent) event); } else if (event instanceof BeforeStageExecutionEvent) { listener.beforeStageExecution((BeforeStageExecutionEvent) event); } else if (event instanceof AfterStageExecutionEvent) { listener.afterStageExecution((AfterStageExecutionEvent) event); } else if (event instanceof AfterPipelineExecutionEvent) { listener.afterPipelineExecution((AfterPipelineExecutionEvent) event); } else if (event instanceof OnErrorPipelineExecutionEvent) { listener.onPipelineError((OnErrorPipelineExecutionEvent) event); } else if (event instanceof OnErrorStageExecutionEvent) { listener.onStageError((OnErrorStageExecutionEvent) event); } } catch (Exception e) { //if the notification of the event in a particular listener fails let the execution continue. logger.error("Pipeline event notification on listener: " + listener + " failed: " + e.getMessage(), e); } }); }
times(1)).beforePipelineExecution(beforePipelineExecutionCaptor.capture()); assertEquals(pipe, beforePipelineExecutionCaptor.getValue().getPipeline()); times(4)).beforeStageExecution(beforeStageExecutionCaptor.capture()); verify(pipelineEventListener, times(4)).afterStageExecution(afterStageExecutionCaptor.capture()); times(1)).afterPipelineExecution(afterPipelineExecutionCaptor.capture()); assertEquals(pipe, afterPipelineExecutionCaptor.getValue().getPipeline());
private void propagateEvent(final AfterPipelineExecutionEvent afterPipelineExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.afterPipelineExecution(afterPipelineExecutionEvent); } } }
private void propagateEvent(final BeforeStageExecutionEvent beforeStageExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.beforeStageExecution(beforeStageExecutionEvent); } }
private void propagateEvent(final BeforePipelineExecutionEvent beforePipelineExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.beforePipelineExecution(beforePipelineExecutionEvent); } }
private void propagateEvent(final AfterStageExecutionEvent afterStageExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.afterStageExecution(afterStageExecutionEvent); } }
private void propagateEvent(final OnErrorPipelineExecutionEvent onErrorPipelineExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.onPipelineError(onErrorPipelineExecutionEvent); } }
private void propagateEvent(final OnErrorStageExecutionEvent onErrorStageExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.onStageError(onErrorStageExecutionEvent); } }
private void propagateEvent(final AfterPipelineExecutionEvent afterPipelineExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.afterPipelineExecution(afterPipelineExecutionEvent); } } }
private void propagateEvent(final BeforeStageExecutionEvent beforeStageExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.beforeStageExecution(beforeStageExecutionEvent); } }
private void propagateEvent(final BeforePipelineExecutionEvent beforePipelineExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.beforePipelineExecution(beforePipelineExecutionEvent); } }
private void propagateEvent(final AfterStageExecutionEvent afterStageExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.afterStageExecution(afterStageExecutionEvent); } }
private void propagateEvent(final OnErrorPipelineExecutionEvent onErrorPipelineExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.onPipelineError(onErrorPipelineExecutionEvent); } }
private void propagateEvent(final OnErrorStageExecutionEvent onErrorStageExecutionEvent, final PipelineEventListener... eventListeners) { for (final PipelineEventListener eventListener : eventListeners) { eventListener.onStageError(onErrorStageExecutionEvent); } }
public void notifyExternalListeners(final List<PipelineEventListener> externalListeners, final PipelineEvent event) { externalListeners.forEach(listener -> { try { if (event instanceof BeforePipelineExecutionEvent) { listener.beforePipelineExecution((BeforePipelineExecutionEvent) event); } else if (event instanceof BeforeStageExecutionEvent) { listener.beforeStageExecution((BeforeStageExecutionEvent) event); } else if (event instanceof AfterStageExecutionEvent) { listener.afterStageExecution((AfterStageExecutionEvent) event); } else if (event instanceof AfterPipelineExecutionEvent) { listener.afterPipelineExecution((AfterPipelineExecutionEvent) event); } else if (event instanceof OnErrorPipelineExecutionEvent) { listener.onPipelineError((OnErrorPipelineExecutionEvent) event); } else if (event instanceof OnErrorStageExecutionEvent) { listener.onStageError((OnErrorStageExecutionEvent) event); } } catch (Exception e) { //if the notification of the event in a particular listener fails let the execution continue. logger.error("Pipeline event notification on listener: " + listener + " failed: " + e.getMessage(), e); } }); }
private void testAfterPipelineExecutionEvent(boolean async) { when(taskEntry.isAsync()).thenReturn(async); AfterPipelineExecutionEvent event = new AfterPipelineExecutionEvent(TASK_ID, pipeline); taskManager.localListener.afterPipelineExecution(event); verify(task, times(1)).setPipelineStatus(PipelineExecutorTask.Status.FINISHED); verifyExecutorRegistryUpdated(async); verifyExternalListenersNotified(event); }
private void testBeforeStageExecutionEvent(boolean async) { when(taskEntry.isAsync()).thenReturn(async); BeforeStageExecutionEvent event = new BeforeStageExecutionEvent(TASK_ID, pipeline, stage); taskManager.localListener.beforeStageExecution(event); verify(task, times(1)).setStageStatus(stage.getName(), PipelineExecutorTask.Status.RUNNING); verifyExecutorRegistryUpdated(async); verifyExternalListenersNotified(event); }
private void testBeforePipelineExecutionEvent(boolean async) { when(taskEntry.isAsync()).thenReturn(async); BeforePipelineExecutionEvent event = new BeforePipelineExecutionEvent(TASK_ID, pipeline); taskManager.localListener.beforePipelineExecution(event); verify(task, times(1)).setPipelineStatus(PipelineExecutorTask.Status.RUNNING); verifyExecutorRegistryUpdated(async); verifyExternalListenersNotified(event); }
private void testAfterStageExecutionEvent(boolean async) { when(taskEntry.isAsync()).thenReturn(async); AfterStageExecutionEvent event = new AfterStageExecutionEvent(TASK_ID, pipeline, stage); taskManager.localListener.afterStageExecution(event); verify(task, times(1)).setStageStatus(stage.getName(), PipelineExecutorTask.Status.FINISHED); verifyExecutorRegistryUpdated(async); verifyExternalListenersNotified(event); }
private void testOnPipelineErrorExecutionEvent(boolean async) { when(taskEntry.isAsync()).thenReturn(async); OnErrorPipelineExecutionEvent event = new OnErrorPipelineExecutionEvent(TASK_ID, pipeline, stage, error); taskManager.localListener.onPipelineError(event); verify(task, times(1)).setPipelineStatus(PipelineExecutorTask.Status.ERROR); verify(task, times(1)).setPipelineError(pipelineExecutorErrorCaptor.capture()); assertEquals(new PipelineExecutorError(ERROR_MESSAGE, error), pipelineExecutorErrorCaptor.getValue()); verifyExecutorRegistryUpdated(async); verifyExternalListenersNotified(event); }