Interface ReplicatedEntity.Effect<R>

Type Parameters:
R - The type of the reply message that must be returned by this call.
Enclosing class:
ReplicatedEntity<D extends kalix.replicatedentity.ReplicatedData>

public static interface ReplicatedEntity.Effect<R>
An Effect is a description of what Kalix needs to do after the command is handled. You can think of it as a set of instructions you are passing to Kalix. Kalix will process the instructions on your behalf and ensure that any data that needs to be persisted will be persisted.

Each Kalix component defines its own effects, which are a set of predefined operations that match the capabilities of that component.

A Replicated Effect can either:

  • update the entity state and send a reply to the caller
  • directly reply to the caller if the command is not requesting any state change
  • rejected the command by returning an error
  • instruct Kalix to delete the entity
  • Method Details

    • addSideEffects

      ReplicatedEntity.Effect<R> addSideEffects(Collection<SideEffect> sideEffects)
      Attach the given side effects to this reply.
      Parameters:
      sideEffects - The effects to attach.
      Returns:
      A new reply with the attached effects.
    • addSideEffects

      ReplicatedEntity.Effect<R> addSideEffects(SideEffect... effects)
      Attach the given effects to this reply.
      Parameters:
      effects - The effects to attach.
      Returns:
      A new reply with the attached effects.