Class EntryPointAgent

java.lang.Object
co.com.bancolombia.factory.entrypoints.EntryPointAgent
All Implemented Interfaces:
ModuleFactory

public class EntryPointAgent extends Object implements ModuleFactory
Factory for the A2A Spring AI Agent entry-point.

Generates a full reactive agent skeleton with:

  • A2A domain models (SendMessageRequest, SendMessageResponse, Message, Task, Error, AgentCard)
  • ChatGateway and AgentResponseGateway ports
  • AgentChatUseCase with REST (chatAndRespond) and Kafka (chat) transport methods
  • WebFlux functional router exposing:
    • POST /message:send
    • GET /.well-known/agent-card.json
  • SpringAiChatAdapter (implements ChatGateway via Spring AI ChatClient) when MCP client is disabled
  • Optional Kafka consumer + producer (flag: agent-enable-kafka)

Usage: gradle generateEntryPoint --type=agent [--name=<agentName>] [--agent-enable-kafka=true] [--agent-enable-mcp-client=true]