Skip to content

Commit

Permalink
Removing double serialization
Browse files Browse the repository at this point in the history
  • Loading branch information
krewx committed Sep 20, 2024
1 parent 9880922 commit 80a7ce1
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
2 changes: 1 addition & 1 deletion dyntastic/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -605,7 +605,7 @@ def _construct_transact_item(cls, operation: str, filtered_kwargs: Dict[str, Any
filtered_kwargs["TableName"] = cls._resolve_table_name()

if "ConditionExpression" in filtered_kwargs:
condition_data = transact.serialize_condition(filtered_kwargs["ConditionExpression"], False)
condition_data = transact.serialize_condition(filtered_kwargs["ConditionExpression"])
filtered_kwargs["ConditionExpression"] = condition_data["ConditionExpression"]

# Merging condition expression and update expression names/values so they are both present.
Expand Down
4 changes: 2 additions & 2 deletions dyntastic/transact.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ def serialize_data(item: dict) -> dict:
return {k: _dynamodb_serializer.serialize(v) for k, v in item.items()}


def serialize_condition(condition, do_serialization = True) -> dict:
def serialize_condition(condition) -> dict:
expression = _dynamodb_builder.build_expression(condition)

return {
"ConditionExpression": expression.condition_expression,
"ExpressionAttributeNames": expression.attribute_name_placeholders,
"ExpressionAttributeValues": serialize_data(expression.attribute_value_placeholders) if do_serialization else expression.attribute_value_placeholders,
"ExpressionAttributeValues": expression.attribute_value_placeholders,
}


Expand Down

0 comments on commit 80a7ce1

Please sign in to comment.