Skip to content

Commit 2b42825

Browse files
committed
Remove Starlette-specific DefaultCallContextBuilder
1 parent 12bd20b commit 2b42825

File tree

1 file changed

+6
-17
lines changed

1 file changed

+6
-17
lines changed

src/a2a/server/apps/starlette_app.py

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -50,21 +50,6 @@ def build(self, request: Request) -> ServerCallContext:
5050
"""Builds a ServerCallContext from a Starlette Request."""
5151

5252

53-
class DefaultCallContextBuilder(CallContextBuilder):
54-
"""A default implementation of StarletteCallContextBuilder.
55-
56-
This stores the incoming starlette request using the "starlette_request"
57-
key of the context state.
58-
"""
59-
60-
def build(self, request: Request) -> ServerCallContext:
61-
return ServerCallContext(
62-
state={
63-
'starlette_request': request,
64-
}
65-
)
66-
67-
6853
class A2AStarletteApplication:
6954
"""A Starlette application implementing the A2A protocol server endpoints.
7055
@@ -92,7 +77,7 @@ def __init__(
9277
self.handler = JSONRPCHandler(
9378
agent_card=agent_card, request_handler=http_handler
9479
)
95-
self._context_builder = context_builder or DefaultCallContextBuilder()
80+
self._context_builder = context_builder
9681

9782
def _generate_error_response(
9883
self, request_id: str | int | None, error: JSONRPCError | A2AError
@@ -154,7 +139,11 @@ async def _handle_requests(self, request: Request) -> Response:
154139
try:
155140
body = await request.json()
156141
a2a_request = A2ARequest.model_validate(body)
157-
call_context = self._context_builder.build(request)
142+
call_context = (
143+
self._context_builder.build(request)
144+
if self._context_builder
145+
else None
146+
)
158147

159148
request_id = a2a_request.root.id
160149
request_obj = a2a_request.root

0 commit comments

Comments
 (0)