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

com.ing.baker.recipe.common.Recipe.scala Maven / Gradle / Ivy

There is a newer version: 1.1.18
Show newest version
package com.ing.baker.recipe.common

import scala.concurrent.duration.Duration

/**
  * A Recipe combines a set of interactions & events.
  */
trait Recipe {

  /**
    * The name of the recipe.
    */
  val name: String

  /**
    * The set of interactions.
    */
  val interactions: Seq[InteractionDescriptor]

  /**
    * The set of sieves.
    */
  val sieves: Seq[InteractionDescriptor]

  /**
    * The set of events.
    */
  val sensoryEvents: Set[Event]

  /**
    * The default interaction failure strategy.
    */
  val defaultFailureStrategy: InteractionFailureStrategy

  /**
    * The period that processes can receive events for this recipe.
    *
    * If Duration.Undefined, events will always be accepted.
    */
  val eventReceivePeriod: Duration

  /**
    * The period that processes are stored.
    *
    * If Duration.Undefined, process data will be stored indefinitely.
    */
  val retentionPeriod: Duration
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy