|
1 | 1 | """ |
2 | 2 | Lowest level connection |
3 | 3 | """ |
4 | | -import json |
5 | 4 | import logging |
6 | | -import random |
7 | | -import sys |
8 | | -import time |
9 | 5 | import uuid |
10 | 6 | from base64 import b64decode |
11 | 7 | from threading import local |
|
15 | 11 | import botocore.exceptions |
16 | 12 | from botocore.awsrequest import AWSPreparedRequest, create_request_object |
17 | 13 | from botocore.client import ClientError |
18 | | -from botocore.hooks import first_non_none_response |
19 | 14 | from botocore.exceptions import BotoCoreError |
20 | 15 | from botocore.session import get_session |
21 | 16 |
|
|
30 | 25 | PUT_ITEM, SELECT, LIMIT, QUERY, SCAN, ITEM, LOCAL_SECONDARY_INDEXES, |
31 | 26 | KEYS, KEY, SEGMENT, TOTAL_SEGMENTS, CREATE_TABLE, PROVISIONED_THROUGHPUT, READ_CAPACITY_UNITS, |
32 | 27 | WRITE_CAPACITY_UNITS, GLOBAL_SECONDARY_INDEXES, PROJECTION, EXCLUSIVE_START_TABLE_NAME, TOTAL, |
33 | | - DELETE_TABLE, UPDATE_TABLE, LIST_TABLES, GLOBAL_SECONDARY_INDEX_UPDATES, ATTRIBUTES, |
34 | | - CONSUMED_CAPACITY, CAPACITY_UNITS, ATTRIBUTE_TYPES, |
35 | | - ITEMS, DEFAULT_ENCODING, BINARY, BINARY_SET, LAST_EVALUATED_KEY, RESPONSES, UNPROCESSED_KEYS, |
36 | | - UNPROCESSED_ITEMS, STREAM_SPECIFICATION, STREAM_VIEW_TYPE, STREAM_ENABLED, |
37 | | - EXPRESSION_ATTRIBUTE_NAMES, EXPRESSION_ATTRIBUTE_VALUES, |
38 | | - CONDITION_EXPRESSION, FILTER_EXPRESSION, |
| 28 | + DELETE_TABLE, UPDATE_TABLE, LIST_TABLES, GLOBAL_SECONDARY_INDEX_UPDATES, CONSUMED_CAPACITY, CAPACITY_UNITS, |
| 29 | + ATTRIBUTE_TYPES, DEFAULT_ENCODING, BINARY, BINARY_SET, STREAM_SPECIFICATION, STREAM_VIEW_TYPE, STREAM_ENABLED, |
| 30 | + EXPRESSION_ATTRIBUTE_NAMES, EXPRESSION_ATTRIBUTE_VALUES, CONDITION_EXPRESSION, FILTER_EXPRESSION, |
39 | 31 | TRANSACT_WRITE_ITEMS, TRANSACT_GET_ITEMS, CLIENT_REQUEST_TOKEN, TRANSACT_ITEMS, TRANSACT_CONDITION_CHECK, |
40 | 32 | TRANSACT_GET, TRANSACT_PUT, TRANSACT_DELETE, TRANSACT_UPDATE, UPDATE_EXPRESSION, |
41 | 33 | RETURN_VALUES_ON_CONDITION_FAILURE_VALUES, RETURN_VALUES_ON_CONDITION_FAILURE, |
42 | 34 | AVAILABLE_BILLING_MODES, DEFAULT_BILLING_MODE, BILLING_MODE, PAY_PER_REQUEST_BILLING_MODE, |
43 | | - PROVISIONED_BILLING_MODE, |
44 | | - TIME_TO_LIVE_SPECIFICATION, ENABLED, UPDATE_TIME_TO_LIVE, TAGS, VALUE |
| 35 | + PROVISIONED_BILLING_MODE, TIME_TO_LIVE_SPECIFICATION, ENABLED, UPDATE_TIME_TO_LIVE, TAGS, VALUE |
45 | 36 | ) |
46 | 37 | from pynamodb.exceptions import ( |
47 | 38 | TableError, QueryError, PutError, DeleteError, UpdateError, GetError, ScanError, TableDoesNotExist, |
@@ -351,46 +342,6 @@ def send_pre_boto_callback(self, operation_name, req_uuid, table_name): |
351 | 342 | def _make_api_call(self, operation_name: str, operation_kwargs: Dict, settings: OperationSettings = OperationSettings.default) -> Dict: |
352 | 343 | return self.client._make_api_call(operation_name, operation_kwargs) |
353 | 344 |
|
354 | | - @staticmethod |
355 | | - def _handle_binary_attributes(data): |
356 | | - """ Simulate botocore's binary attribute handling """ |
357 | | - if ITEM in data: |
358 | | - for attr in data[ITEM].values(): |
359 | | - _convert_binary(attr) |
360 | | - if ITEMS in data: |
361 | | - for item in data[ITEMS]: |
362 | | - for attr in item.values(): |
363 | | - _convert_binary(attr) |
364 | | - if RESPONSES in data: |
365 | | - if isinstance(data[RESPONSES], list): |
366 | | - for item in data[RESPONSES]: |
367 | | - for attr in item.values(): |
368 | | - _convert_binary(attr) |
369 | | - else: |
370 | | - for item_list in data[RESPONSES].values(): |
371 | | - for item in item_list: |
372 | | - for attr in item.values(): |
373 | | - _convert_binary(attr) |
374 | | - if LAST_EVALUATED_KEY in data: |
375 | | - for attr in data[LAST_EVALUATED_KEY].values(): |
376 | | - _convert_binary(attr) |
377 | | - if UNPROCESSED_KEYS in data: |
378 | | - for table_data in data[UNPROCESSED_KEYS].values(): |
379 | | - for item in table_data[KEYS]: |
380 | | - for attr in item.values(): |
381 | | - _convert_binary(attr) |
382 | | - if UNPROCESSED_ITEMS in data: |
383 | | - for table_unprocessed_requests in data[UNPROCESSED_ITEMS].values(): |
384 | | - for request in table_unprocessed_requests: |
385 | | - for item_mapping in request.values(): |
386 | | - for item in item_mapping.values(): |
387 | | - for attr in item.values(): |
388 | | - _convert_binary(attr) |
389 | | - if ATTRIBUTES in data: |
390 | | - for attr in data[ATTRIBUTES].values(): |
391 | | - _convert_binary(attr) |
392 | | - return data |
393 | | - |
394 | 345 | @property |
395 | 346 | def session(self) -> botocore.session.Session: |
396 | 347 | """ |
|
0 commit comments