Skip to content

Commit d0c5fbe

Browse files
give context to input streams
1 parent ce663f3 commit d0c5fbe

File tree

2 files changed

+11
-11
lines changed

2 files changed

+11
-11
lines changed

codegen/core/src/main/java/software/amazon/smithy/python/codegen/ClientGenerator.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -199,12 +199,12 @@ async def _input_stream(
199199
config: $4T,
200200
operation_name: str,
201201
) -> Any:
202-
request_future = Future[$2T]()
202+
request_future = Future[InterceptorContext[Any, Any, $2T, Any]]()
203203
awaitable_output = asyncio.create_task(self._execute_operation(
204204
input, plugins, serialize, deserialize, config, operation_name,
205205
request_future=request_future
206206
))
207-
transport_request = await request_future
207+
request_context = await request_future
208208
${5C|}
209209
210210
async def _output_stream(
@@ -235,14 +235,14 @@ async def _duplex_stream(
235235
operation_name: str,
236236
event_deserializer: Callable[[ShapeDeserializer], Any],
237237
) -> Any:
238-
request_future = Future[$2T]()
238+
request_future = Future[InterceptorContext[Any, Any, $2T, Any]]()
239239
response_future = Future[$3T]()
240240
awaitable_output = asyncio.create_task(self._execute_operation(
241241
input, plugins, serialize, deserialize, config, operation_name,
242242
request_future=request_future,
243243
response_future=response_future
244244
))
245-
transport_request = await request_future
245+
request_context = await request_future
246246
${7C|}
247247
""",
248248
pluginSymbol,
@@ -264,7 +264,7 @@ async def _execute_operation(
264264
deserialize: Callable[[$3T, $5T], Awaitable[Output]],
265265
config: $5T,
266266
operation_name: str,
267-
request_future: Future[$2T] | None = None,
267+
request_future: Future[InterceptorContext[Any, Any, $2T, Any]] | None = None,
268268
response_future: Future[$3T] | None = None,
269269
) -> Output:
270270
try:
@@ -292,7 +292,7 @@ async def _handle_execution(
292292
deserialize: Callable[[$3T, $5T], Awaitable[Output]],
293293
config: $5T,
294294
operation_name: str,
295-
request_future: Future[$2T] | None,
295+
request_future: Future[InterceptorContext[Any, Any, $2T, Any]] | None,
296296
response_future: Future[$3T] | None,
297297
) -> Output:
298298
logger.debug('Making request for operation "%s" with parameters: %s', operation_name, input)
@@ -409,7 +409,7 @@ await seek(0)
409409
retry_strategy.record_success(token=retry_token)
410410
if response_future is not None:
411411
response_future.set_result(
412-
context_with_response.transport_response, # type: ignore
412+
context_with_response.transport_response # type: ignore
413413
)
414414
break
415415
except Exception as e:
@@ -433,7 +433,7 @@ async def _handle_attempt(
433433
context: InterceptorContext[Input, None, $2T, None],
434434
config: $5T,
435435
operation_name: str,
436-
request_future: Future[$2T] | None,
436+
request_future: Future[InterceptorContext[Any, Any, $2T, Any]] | None,
437437
) -> InterceptorContext[Input, Output, $2T, $3T | None]:
438438
try:
439439
# assert config.interceptors is not None
@@ -599,7 +599,7 @@ async def _handle_attempt(
599599
request=context_with_response.transport_request,
600600
request_config=request_config,
601601
))
602-
request_future.set_result(context_with_response.transport_request)
602+
request_future.set_result(context_with_response)
603603
context_with_response._transport_response = await response_task
604604
else:
605605
context_with_response._transport_response = await config.http_client.send(

codegen/core/src/main/java/software/amazon/smithy/python/codegen/integrations/RestJsonProtocolGenerator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -403,7 +403,7 @@ public void wrapInputStream(GenerationContext context, PythonWriter writer) {
403403
return AWSInputEventStream[Any, Any](
404404
payload_codec=codec,
405405
awaitable_output=awaitable_output,
406-
async_writer=transport_request.body, # type: ignore
406+
async_writer=request_context.transport_request.body, # type: ignore
407407
)
408408
""");
409409
}
@@ -443,7 +443,7 @@ public void wrapDuplexStream(GenerationContext context, PythonWriter writer) {
443443
codec = JSONCodec(default_timestamp_format=TimestampFormat.EPOCH_SECONDS)
444444
return AWSDuplexEventStream[Any, Any, Any](
445445
payload_codec=codec,
446-
async_writer=transport_request.body, # type: ignore
446+
async_writer=request_context.transport_request.body, # type: ignore
447447
awaitable_output=awaitable_output,
448448
awaitable_response=response_future,
449449
deserializer=event_deserializer, # type: ignore

0 commit comments

Comments
 (0)