Model Class

Mixin for all client request body/response body models to support serialization and deserialization.

Inheritance
builtins.object
Model

Constructor

Model(**kwargs)

Methods

as_dict

Return a dict that can be JSONify using json.dump.

Advanced usage might optionaly use a callback as parameter:

Key is the attribute name used in Python. Attr_desc is a dict of metadata. Currently contains 'type' with the msrest type and 'key' with the RestAPI encoded key. Value is the current value in this object.

The string returned will be used to serialize the key. If the return type is a list, this is considered hierarchical result dict.

See the three examples in this file:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

If you want XML serialization, you can pass the kwargs is_xml=True.

deserialize

Parse a str using the RestAPI syntax and return a model.

enable_additional_properties_sending
from_dict

Parse a dict using given key extractor return a model.

By default consider key extractors (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor and last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Return the JSON that would be sent to azure from this model.

This is an alias to as_dict(full_restapi_key_transformer, keep_readonly=False).

If you want XML serialization, you can pass the kwargs is_xml=True.

validate

Validate this model recursively and return a list of ValidationError.

as_dict

Return a dict that can be JSONify using json.dump.

Advanced usage might optionaly use a callback as parameter:

Key is the attribute name used in Python. Attr_desc is a dict of metadata. Currently contains 'type' with the msrest type and 'key' with the RestAPI encoded key. Value is the current value in this object.

The string returned will be used to serialize the key. If the return type is a list, this is considered hierarchical result dict.

See the three examples in this file:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

If you want XML serialization, you can pass the kwargs is_xml=True.

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

Parameters

key_transformer
<xref:function>
default value: True

A key transformer function.

key_transformer
default value: <function attribute_transformer at 0x0000026279F17400>

Returns

A dict JSON compatible object

Return type

deserialize

Parse a str using the RestAPI syntax and return a model.

deserialize(data, content_type=None)

Parameters

data
str
Required

A str using RestAPI structure. JSON by default.

content_type
str
Required

JSON by default, set application/xml if XML.

content_type
default value: None

Returns

An instance of this model

enable_additional_properties_sending

enable_additional_properties_sending()

Parameters

cls
Required

from_dict

Parse a dict using given key extractor return a model.

By default consider key extractors (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor and last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

Parameters

data
dict
Required

A dict using RestAPI structure

content_type
str
Required

JSON by default, set application/xml if XML.

key_extractors
default value: None
content_type
default value: None

Returns

An instance of this model

is_xml_model

is_xml_model()

Parameters

cls
Required

serialize

Return the JSON that would be sent to azure from this model.

This is an alias to as_dict(full_restapi_key_transformer, keep_readonly=False).

If you want XML serialization, you can pass the kwargs is_xml=True.

serialize(keep_readonly=False, **kwargs)

Parameters

keep_readonly
bool
default value: False

If you want to serialize the readonly attributes

Returns

A dict JSON compatible object

Return type

validate

Validate this model recursively and return a list of ValidationError.

validate()

Returns

A list of validation error

Return type