22
33from a2a .server .agent_execution import RequestContext , RequestContextBuilder
44from a2a .server .context import ServerCallContext
5+ from a2a .server .id_generator import IdGenerator
56from a2a .server .tasks import TaskStore
67from a2a .types import MessageSendParams , Task
78
@@ -13,6 +14,8 @@ def __init__(
1314 self ,
1415 should_populate_referred_tasks : bool = False ,
1516 task_store : TaskStore | None = None ,
17+ task_id_generator : IdGenerator | None = None ,
18+ context_id_generator : IdGenerator | None = None ,
1619 ) -> None :
1720 """Initializes the SimpleRequestContextBuilder.
1821
@@ -22,9 +25,13 @@ def __init__(
2225 `related_tasks` field in the RequestContext. Defaults to False.
2326 task_store: The TaskStore instance to use for fetching referred tasks.
2427 Required if `should_populate_referred_tasks` is True.
28+ task_id_generator: ID generator for new task IDs. Defaults to None.
29+ context_id_generator: ID generator for new context IDs. Defaults to None.
2530 """
2631 self ._task_store = task_store
2732 self ._should_populate_referred_tasks = should_populate_referred_tasks
33+ self ._task_id_generator = task_id_generator
34+ self ._context_id_generator = context_id_generator
2835
2936 async def build (
3037 self ,
@@ -74,4 +81,6 @@ async def build(
7481 task = task ,
7582 related_tasks = related_tasks ,
7683 call_context = context ,
84+ task_id_generator = self ._task_id_generator ,
85+ context_id_generator = self ._context_id_generator ,
7786 )
0 commit comments