org.apache.ode.jacob.soup

## Interface ExecutionQueue

- All Known Implementing Classes:
    ExecutionQueueImpl

      public interface ExecutionQueue

  The soup, the reactive "broth" that underlies the JACOB system. The `ExecutionQueue` implementation is responsible for implementing the JACOB reactive rules and maintaining the state of the reactive broth.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(CommChannel channel)`
    `void` | `add(CommGroup group)`
    `CommChannel` | `consumeExport(java.lang.String exportId)`
    `java.lang.String` | `createExport(CommChannel channel)`
    `int` | `cycle()`
    `Continuation` | `dequeueReaction()`
    `void` | `dumpState(java.io.PrintStream err)`
    `void` | `enqueueReaction(Continuation continuation)` Add a continuation to the broth.
    `void` | `flush()`
    `boolean` | `hasReactions()` Are there any reactions that can be executed in the broth?
    `boolean` | `isComplete()`
    `void` | `setClassLoader(java.lang.ClassLoader classLoader)`
    `void` | `setReplacementMap(ReplacementMap replacementMap)`

- - ### Method Detail

    - #### hasReactions

          boolean hasReactions()

      Are there any reactions that can be executed in the broth?
      Returns:
        `true` if there are "enabled" reactions

    - #### enqueueReaction

          void enqueueReaction(Continuation continuation)

      Add a continuation to the broth. This operation is sometimes referred to as an "injection"; it can be used to inject into the broth the "original" continuation.
      Parameters:
        `continuation` - the `Continuation` to add to the broth

    - #### dequeueReaction

          Continuation dequeueReaction()

    - #### add

          void add(CommChannel channel)

    - #### add

          void add(CommGroup group)

    - #### createExport

          java.lang.String createExport(CommChannel channel)

    - #### consumeExport

          CommChannel consumeExport(java.lang.String exportId)

    - #### cycle

          int cycle()

    - #### flush

          void flush()

    - #### setClassLoader

          void setClassLoader(java.lang.ClassLoader classLoader)

    - #### setReplacementMap

          void setReplacementMap(ReplacementMap replacementMap)

    - #### isComplete

          boolean isComplete()

    - #### dumpState

          void dumpState(java.io.PrintStream err)