All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.codepoetics.fluvius.api.history.FlowEventTranslator Maven / Gradle / Ivy

package com.codepoetics.fluvius.api.history;

/**
 * Translates flow events into some other type.
 *
 * @param  The type to which the flow events' data has been serialised.
 * @param  The type to translate flow events to.
 */
public interface FlowEventTranslator {

  /**
   * Translate a {@link StepStartedEvent} to the required type.
   *
   * @param event The event to translate.
   * @return The translated event.
   */
  V translateStepStartedEvent(StepStartedEvent event);

  /**
   * Translate a {@link StepSucceededEvent} to the required type.
   *
   * @param event The event to translate.
   * @return The translated event.
   */
  V translateStepSucceededEvent(StepSucceededEvent event);

  /**
   * Translate a {@link StepFailedEvent} to the required type.
   *
   * @param event The event to translate.
   * @return The translated event.
   */
  V translateStepFailedEvent(StepFailedEvent event);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy