capo-workmailmessageflow 0.2.0__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {capo_workmailmessageflow-0.2.0/src/capo_workmailmessageflow.egg-info → capo_workmailmessageflow-0.4.0}/PKG-INFO +1 -1
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/pyproject.toml +1 -1
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_operations/giraffe_message_in_transit_service/get_raw_message_content.py +3 -2
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_operations/giraffe_message_in_transit_service/put_raw_message_content.py +3 -2
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_services/_pipeline.py +17 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_services/async_work_mail_message_flow.py +2 -2
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_services/work_mail_message_flow.py +2 -2
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0/src/capo_workmailmessageflow.egg-info}/PKG-INFO +1 -1
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/LICENSE +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/README.md +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/setup.cfg +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/__init__.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_async.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_auth/_identity.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_auth/_providers.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_auth/_signers.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_auth/_sigv4.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_auth/_zapros_handler.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_body.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_iter.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_pagination.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_protocol/__init__.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_protocol/errors.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_protocol/eventstream.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_protocol/serialize.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_protocol/xml.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_rule_engine/__init__.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_rule_engine/_aws_partition.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_rule_engine/_endpoint_rule_set.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_rule_engine/_endpoint_runtime.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/_services/_aws_config.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/errors/__init__.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/errors/_base.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/errors/invalid_content_location.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/errors/message_frozen.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/errors/message_rejected.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/errors/resource_not_found_exception.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/py.typed +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/_prelude/blob.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/_prelude/timestamp.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/error_message.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/get_raw_message_content_request.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/get_raw_message_content_response.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/message_content_blob.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/message_id_type.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/put_raw_message_content_request.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/put_raw_message_content_response.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/raw_message_content.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/s3_bucket_id_type.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/s3_key_id_type.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/s3_reference.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow/types/s3_version_type.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow.egg-info/SOURCES.txt +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow.egg-info/dependency_links.txt +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow.egg-info/requires.txt +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/src/capo_workmailmessageflow.egg-info/top_level.txt +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/tests/test_body.py +0 -0
- {capo_workmailmessageflow-0.2.0 → capo_workmailmessageflow-0.4.0}/tests/test_sigv4.py +0 -0
|
@@ -24,6 +24,7 @@ from capo_workmailmessageflow._rule_engine._endpoint_rule_set import (
|
|
|
24
24
|
from capo_workmailmessageflow._services._pipeline import (
|
|
25
25
|
AsyncOperationOptions,
|
|
26
26
|
OperationOptions,
|
|
27
|
+
raise_error,
|
|
27
28
|
)
|
|
28
29
|
from capo_workmailmessageflow.errors import UnknownServiceError
|
|
29
30
|
|
|
@@ -127,7 +128,7 @@ def get_raw_message_content(
|
|
|
127
128
|
try:
|
|
128
129
|
if response.status >= 300:
|
|
129
130
|
response.read()
|
|
130
|
-
|
|
131
|
+
raise_error(response, handle_error)
|
|
131
132
|
return handle_response(response), response
|
|
132
133
|
except BaseException:
|
|
133
134
|
response.close()
|
|
@@ -145,7 +146,7 @@ async def async_get_raw_message_content(
|
|
|
145
146
|
try:
|
|
146
147
|
if response.status >= 300:
|
|
147
148
|
await response.aread()
|
|
148
|
-
|
|
149
|
+
raise_error(response, handle_error)
|
|
149
150
|
return await async_handle_response(response), response
|
|
150
151
|
except BaseException:
|
|
151
152
|
await response.aclose()
|
|
@@ -27,6 +27,7 @@ from capo_workmailmessageflow._rule_engine._endpoint_rule_set import (
|
|
|
27
27
|
from capo_workmailmessageflow._services._pipeline import (
|
|
28
28
|
AsyncOperationOptions,
|
|
29
29
|
OperationOptions,
|
|
30
|
+
raise_error,
|
|
30
31
|
)
|
|
31
32
|
from capo_workmailmessageflow.errors import UnknownServiceError
|
|
32
33
|
|
|
@@ -142,7 +143,7 @@ def put_raw_message_content(
|
|
|
142
143
|
try:
|
|
143
144
|
if response.status >= 300:
|
|
144
145
|
response.read()
|
|
145
|
-
|
|
146
|
+
raise_error(response, handle_error)
|
|
146
147
|
return handle_response(response), response
|
|
147
148
|
except BaseException:
|
|
148
149
|
response.close()
|
|
@@ -160,7 +161,7 @@ async def async_put_raw_message_content(
|
|
|
160
161
|
try:
|
|
161
162
|
if response.status >= 300:
|
|
162
163
|
await response.aread()
|
|
163
|
-
|
|
164
|
+
raise_error(response, handle_error)
|
|
164
165
|
return await async_handle_response(response), response
|
|
165
166
|
except BaseException:
|
|
166
167
|
await response.aclose()
|
|
@@ -6,6 +6,7 @@ from collections.abc import AsyncIterator, Iterator, Sequence
|
|
|
6
6
|
from dataclasses import dataclass
|
|
7
7
|
from typing import TYPE_CHECKING, Awaitable, Callable, Generic, TypeVar, cast
|
|
8
8
|
|
|
9
|
+
from typing_extensions import Never
|
|
9
10
|
from zapros import (
|
|
10
11
|
AsyncClient,
|
|
11
12
|
Client,
|
|
@@ -135,6 +136,22 @@ async def aexecute_pipeline(
|
|
|
135
136
|
return await make_chain(0)(request)
|
|
136
137
|
|
|
137
138
|
|
|
139
|
+
def raise_error(response: Response, handle_error: Callable[[Response], Never]) -> Never:
|
|
140
|
+
try:
|
|
141
|
+
handle_error(response)
|
|
142
|
+
except ServiceError as exc:
|
|
143
|
+
# The response itself can say a retry is safe, even when the error is
|
|
144
|
+
# not marked @retryable: a 429, a transient 5xx or a Retry-After header.
|
|
145
|
+
if response.status == 429:
|
|
146
|
+
exc.is_throttling_error = True
|
|
147
|
+
if (
|
|
148
|
+
response.status in (429, 500, 502, 503, 504)
|
|
149
|
+
or "retry-after" in response.headers
|
|
150
|
+
):
|
|
151
|
+
exc.is_retryable = True
|
|
152
|
+
raise
|
|
153
|
+
|
|
154
|
+
|
|
138
155
|
def _is_retryable(exc: Exception) -> bool:
|
|
139
156
|
if isinstance(exc, ServiceError):
|
|
140
157
|
return exc.is_retryable
|
|
@@ -184,14 +184,14 @@ class AsyncWorkMailMessageFlowClient:
|
|
|
184
184
|
*,
|
|
185
185
|
config_overrides: Optional[AsyncWorkMailMessageFlowClientConfig] = None,
|
|
186
186
|
) -> "capo_workmailmessageflow.types.put_raw_message_content_response.PutRawMessageContentResponse":
|
|
187
|
-
|
|
187
|
+
"""<p>Updates the raw content of an in-transit email message, in MIME format.</p> <p>This example describes how to update in-transit email message. For more information and examples for using this API, see <a href="https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html"> Updating message content with AWS Lambda</a>.</p> <note> <p>Updates to an in-transit message only appear when you call <code>PutRawMessageContent</code> from an AWS Lambda function configured with a synchronous <a href="https://docs.aws.amazon.com/workmail/latest/adminguide/lambda.html#synchronous-rules"> Run Lambda</a> rule. If you call <code>PutRawMessageContent</code> on a delivered or sent message, the message remains unchanged, even though <a href="https://docs.aws.amazon.com/workmail/latest/APIReference/API_messageflow_GetRawMessageContent.html">GetRawMessageContent</a> returns an updated message. </p> </note>
|
|
188
188
|
|
|
189
189
|
Args:
|
|
190
190
|
message_id: <p>The identifier of the email message being updated.</p>
|
|
191
191
|
content: <p>Describes the raw message content of the updated email message.</p>
|
|
192
192
|
|
|
193
193
|
Raises:
|
|
194
|
-
capo_workmailmessageflow.errors.invalid_content_location.InvalidContentLocation: <p>WorkMail could not access the updated email content. Possible reasons:</p> <ul> <li> <p>You made the request in a region other than your S3 bucket region.</p> </li> <li> <p>The <a href
|
|
194
|
+
capo_workmailmessageflow.errors.invalid_content_location.InvalidContentLocation: <p>WorkMail could not access the updated email content. Possible reasons:</p> <ul> <li> <p>You made the request in a region other than your S3 bucket region.</p> </li> <li> <p>The <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-owner-condition.html">S3 bucket owner</a> is not the same as the calling AWS account.</p> </li> <li> <p>You have an incomplete or missing S3 bucket policy. For more information about policies, see <a href="https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html"> Updating message content with AWS Lambda </a> in the <i>WorkMail Administrator Guide</i>.</p> </li> </ul>
|
|
195
195
|
capo_workmailmessageflow.errors.message_frozen.MessageFrozen: <p>The requested email is not eligible for update. This is usually the case for a redirected email.</p>
|
|
196
196
|
capo_workmailmessageflow.errors.message_rejected.MessageRejected: <p>The requested email could not be updated due to an error in the MIME content. Check the error message for more information about what caused the error.</p>
|
|
197
197
|
capo_workmailmessageflow.errors.resource_not_found_exception.ResourceNotFoundException: <p>The requested email message is not found.</p>
|
|
@@ -183,14 +183,14 @@ class WorkMailMessageFlowClient:
|
|
|
183
183
|
*,
|
|
184
184
|
config_overrides: Optional[WorkMailMessageFlowClientConfig] = None,
|
|
185
185
|
) -> "capo_workmailmessageflow.types.put_raw_message_content_response.PutRawMessageContentResponse":
|
|
186
|
-
|
|
186
|
+
"""<p>Updates the raw content of an in-transit email message, in MIME format.</p> <p>This example describes how to update in-transit email message. For more information and examples for using this API, see <a href="https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html"> Updating message content with AWS Lambda</a>.</p> <note> <p>Updates to an in-transit message only appear when you call <code>PutRawMessageContent</code> from an AWS Lambda function configured with a synchronous <a href="https://docs.aws.amazon.com/workmail/latest/adminguide/lambda.html#synchronous-rules"> Run Lambda</a> rule. If you call <code>PutRawMessageContent</code> on a delivered or sent message, the message remains unchanged, even though <a href="https://docs.aws.amazon.com/workmail/latest/APIReference/API_messageflow_GetRawMessageContent.html">GetRawMessageContent</a> returns an updated message. </p> </note>
|
|
187
187
|
|
|
188
188
|
Args:
|
|
189
189
|
message_id: <p>The identifier of the email message being updated.</p>
|
|
190
190
|
content: <p>Describes the raw message content of the updated email message.</p>
|
|
191
191
|
|
|
192
192
|
Raises:
|
|
193
|
-
capo_workmailmessageflow.errors.invalid_content_location.InvalidContentLocation: <p>WorkMail could not access the updated email content. Possible reasons:</p> <ul> <li> <p>You made the request in a region other than your S3 bucket region.</p> </li> <li> <p>The <a href
|
|
193
|
+
capo_workmailmessageflow.errors.invalid_content_location.InvalidContentLocation: <p>WorkMail could not access the updated email content. Possible reasons:</p> <ul> <li> <p>You made the request in a region other than your S3 bucket region.</p> </li> <li> <p>The <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-owner-condition.html">S3 bucket owner</a> is not the same as the calling AWS account.</p> </li> <li> <p>You have an incomplete or missing S3 bucket policy. For more information about policies, see <a href="https://docs.aws.amazon.com/workmail/latest/adminguide/update-with-lambda.html"> Updating message content with AWS Lambda </a> in the <i>WorkMail Administrator Guide</i>.</p> </li> </ul>
|
|
194
194
|
capo_workmailmessageflow.errors.message_frozen.MessageFrozen: <p>The requested email is not eligible for update. This is usually the case for a redirected email.</p>
|
|
195
195
|
capo_workmailmessageflow.errors.message_rejected.MessageRejected: <p>The requested email could not be updated due to an error in the MIME content. Check the error message for more information about what caused the error.</p>
|
|
196
196
|
capo_workmailmessageflow.errors.resource_not_found_exception.ResourceNotFoundException: <p>The requested email message is not found.</p>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|