def update_input(
self,
input_name: "capo_iot_events.types.input_name.InputName",
input_definition: "capo_iot_events.types.input_definition.InputDefinition",
*,
config_overrides: Optional[IoTEventsClientConfig] = None,
input_description: Optional[
"capo_iot_events.types.input_description.InputDescription"
] = None,
) -> "capo_iot_events.types.update_input_response.UpdateInputResponse":
"""<p>Updates an input.</p>
Args:
input_name: <p>The name of the input you want to update.</p>
input_description: <p>A brief description of the input.</p>
input_definition: <p>The definition of the input.</p>
Raises:
capo_iot_events.errors.internal_failure_exception.InternalFailureException: <p>An internal failure occurred.</p>
capo_iot_events.errors.invalid_request_exception.InvalidRequestException: <p>The request was invalid.</p>
capo_iot_events.errors.resource_in_use_exception.ResourceInUseException: <p>The resource is in use.</p>
capo_iot_events.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource was not found.</p>
capo_iot_events.errors.service_unavailable_exception.ServiceUnavailableException: <p>The service is currently unavailable.</p>
capo_iot_events.errors.throttling_exception.ThrottlingException: <p>The request could not be completed due to throttling.</p>
capo_iot_events.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_iot_events.types.update_input_request.UpdateInputRequest]",
) -> OperationResponse[
"capo_iot_events.types.update_input_response.UpdateInputResponse"
]:
import capo_iot_events._operations.iot_columbo_service.update_input
output, http_response = (
capo_iot_events._operations.iot_columbo_service.update_input.update_input(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("UpdateInput")
)
input_: capo_iot_events.types.update_input_request.UpdateInputRequest = {
"input_name": input_name,
"input_definition": input_definition,
}
if input_description is not None:
input_["input_description"] = input_description
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output