Class DialogueCapability.Builder

java.lang.Object
dev.agenor.runtime.dialogue.DialogueCapability.Builder
Enclosing class:
DialogueCapability

public static final class DialogueCapability.Builder extends Object
Builder for a DialogueCapability with non-default collaborators.

Every collaborator has the same default the plain constructor uses, so only what actually differs needs to be set.

Since:
0.26.0
  • Method Details

    • conversationManagerFactory

      public DialogueCapability.Builder conversationManagerFactory(ConversationManagerFactory factory)
      Parameters:
      factory - creates the conversation manager; default DefaultConversationManager::new (in-memory, node-local)
      Returns:
      this builder
    • protocolRegistry

      public DialogueCapability.Builder protocolRegistry(ProtocolRegistry registry)
      Parameters:
      registry - the protocols available to this agent, e.g. one carrying a custom Protocol; default: the built-in request/query/contract-net
      Returns:
      this builder
    • commitmentTracker

      public DialogueCapability.Builder commitmentTracker(CommitmentTracker tracker)
      Parameters:
      tracker - records the commitments made in this agent's conversations; default DefaultCommitmentTracker
      Returns:
      this builder
    • retention

      public DialogueCapability.Builder retention(Duration retention)
      Parameters:
      retention - how long terminated conversations and commitments are kept before being swept; default 5 minutes
      Returns:
      this builder
    • sweepInterval

      public DialogueCapability.Builder sweepInterval(Duration sweepInterval)
      Parameters:
      sweepInterval - how often the retention sweep runs; default 1 minute. It also bounds how late an overdue commitment is marked violated
      Returns:
      this builder
    • build

      public DialogueCapability build()
      Returns:
      the configured capability, already registered on the agent's lifecycle hooks when it supports them