Skip to content

Commit 299e281

Browse files
committed
fixing model_field[methode_name]
1 parent 6eb340f commit 299e281

File tree

1 file changed

+28
-10
lines changed

1 file changed

+28
-10
lines changed

src/a2a/server/apps/jsonrpc/jsonrpc_app.py

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -170,17 +170,35 @@ class JSONRPCApplication(ABC):
170170
| GetAuthenticatedExtendedCardRequest
171171
)
172172

173+
# Pydantic model fields like 'method' are instance attributes, not class attributes.
174+
# So, 'Type.method' does not exist until you instantiate the model.
175+
# To get the default value for the 'method' field at the class level,
176+
# you must use Type.model_fields["method"].default.
173177
METHOD_TO_MODEL: dict[str, type[A2ARequestModel]] = {
174-
SendMessageRequest.method: SendMessageRequest,
175-
SendStreamingMessageRequest.method: SendStreamingMessageRequest,
176-
GetTaskRequest.method: GetTaskRequest,
177-
CancelTaskRequest.method: CancelTaskRequest,
178-
SetTaskPushNotificationConfigRequest.method: SetTaskPushNotificationConfigRequest,
179-
GetTaskPushNotificationConfigRequest.method: GetTaskPushNotificationConfigRequest,
180-
ListTaskPushNotificationConfigRequest.method: ListTaskPushNotificationConfigRequest,
181-
DeleteTaskPushNotificationConfigRequest.method: DeleteTaskPushNotificationConfigRequest,
182-
TaskResubscriptionRequest.method: TaskResubscriptionRequest,
183-
GetAuthenticatedExtendedCardRequest.method: GetAuthenticatedExtendedCardRequest,
178+
SendMessageRequest.model_fields['method'].default: SendMessageRequest,
179+
SendStreamingMessageRequest.model_fields[
180+
'method'
181+
].default: SendStreamingMessageRequest,
182+
GetTaskRequest.model_fields['method'].default: GetTaskRequest,
183+
CancelTaskRequest.model_fields['method'].default: CancelTaskRequest,
184+
SetTaskPushNotificationConfigRequest.model_fields[
185+
'method'
186+
].default: SetTaskPushNotificationConfigRequest,
187+
GetTaskPushNotificationConfigRequest.model_fields[
188+
'method'
189+
].default: GetTaskPushNotificationConfigRequest,
190+
ListTaskPushNotificationConfigRequest.model_fields[
191+
'method'
192+
].default: ListTaskPushNotificationConfigRequest,
193+
DeleteTaskPushNotificationConfigRequest.model_fields[
194+
'method'
195+
].default: DeleteTaskPushNotificationConfigRequest,
196+
TaskResubscriptionRequest.model_fields[
197+
'method'
198+
].default: TaskResubscriptionRequest,
199+
GetAuthenticatedExtendedCardRequest.model_fields[
200+
'method'
201+
].default: GetAuthenticatedExtendedCardRequest,
184202
}
185203

186204
def __init__( # noqa: PLR0913

0 commit comments

Comments
 (0)