roboto.updates#

Module Contents#

class roboto.updates.MetadataChangeset(/, **data)#

Bases: pydantic.BaseModel

Changeset for metadata

Parameters:

data (Any)

class Builder#
build()#
Return type:

MetadataChangeset

put_field(key, value)#
Parameters:
  • key (str)

  • value (Any)

Return type:

MetadataChangeset

put_tag(tag)#
Parameters:

tag (str)

Return type:

MetadataChangeset

remove_field(key)#
Parameters:

key (str)

Return type:

MetadataChangeset

remove_tag(tag)#
Parameters:

tag (str)

Return type:

MetadataChangeset

apply_field_updates(existing_metadata)#
Parameters:

existing_metadata (dict[str, Any])

Return type:

dict[str, Any]

apply_tag_updates(existing_tags)#
Parameters:

existing_tags (list[str])

Return type:

StrSequence

combine(other)#
Parameters:

other (MetadataChangeset)

Return type:

MetadataChangeset

classmethod from_metadata(metadata)#

Creates a changeset that will replace any existing metadata with what’s provided.

Parameters:

metadata (Mapping[str, Any])

Return type:

MetadataChangeset

is_empty()#
Return type:

bool

put_fields: dict[str, Any] | None = None#
put_tags: StrSequence | None = None#
remove_fields: StrSequence | None = None#
remove_tags: StrSequence | None = None#
replace_all: bool = False#
roboto.updates.StrSequence#
class roboto.updates.TaglessMetadataChangeset(/, **data)#

Bases: pydantic.BaseModel

Changeset for tagless metadata

Parameters:

data (Any)

class Builder#
build()#
Return type:

TaglessMetadataChangeset

put_field(key, value)#
Parameters:
  • key (str)

  • value (Any)

Return type:

TaglessMetadataChangeset

remove_field(key)#
Parameters:

key (str)

Return type:

TaglessMetadataChangeset

apply_field_updates(existing_metadata)#
Parameters:

existing_metadata (dict[str, Any])

Return type:

dict[str, Any]

classmethod from_replacement_metadata(metadata)#

Creates a changeset to replace any existing metadata with the metadata provided.

Parameters:

metadata (dict[str, Any])

Return type:

TaglessMetadataChangeset

has_changes()#

Checks whether applying this changeset would result in any metadata changes.

Return type:

bool

put_fields: dict[str, Any] | None = None#
remove_fields: StrSequence | None = None#
replace_all: bool = False#
class roboto.updates.UpdateCondition(/, **data)#

Bases: pydantic.BaseModel

A condition to be applied to an update operation, succeeding only if the condition evaluates to True at update-time.

value is compared to the resource’s current value of key using comparator.

This is a severely constrainted subset of the conditions supported by DynamoDB. See: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.OperatorsAndFunctions.html

Parameters:

data (Any)

comparator: Literal['eq', 'ne']#
key: str#
value: Any = None#