Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Small model cleanup #1334

Merged
merged 1 commit into from
Feb 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 6 additions & 24 deletions .generator/src/generator/templates/model_utils.j2
Original file line number Diff line number Diff line change
Expand Up @@ -182,24 +182,6 @@ class OpenApiModel(object):

return super(OpenApiModel, cls).__new__(cls)

@classmethod
def _new_from_openapi_data(cls_, *args, **kwargs):
kwargs = change_keys_js_to_python(kwargs, cls_)
if len(args) == 1:
arg = args[0]
if arg is None and is_type_nullable(cls_):
# The input data is the 'null' value and the type is nullable.
return None

if issubclass(cls_, ModelComposed) and allows_single_value_input(cls_):
model_kwargs = {}
oneof_instance = get_oneof_instance(cls_, model_kwargs, kwargs, model_arg=arg)
return oneof_instance

self = super(OpenApiModel, cls_).__new__(cls_)
cls_.__init__(self, *args, **kwargs)
return self

def __init__(self, kwargs):
"""
:param _check_type: If True, values for parameters in openapi_types
Expand Down Expand Up @@ -1105,17 +1087,17 @@ def deserialize_model(model_data, model_class, path_to_item, check_type, configu
)

if issubclass(model_class, ModelSimple):
return model_class._new_from_openapi_data(model_data, **kw_args)
return model_class(model_data, **kw_args)
elif isinstance(model_data, list):
if issubclass(model_class, ModelComposed) and allows_single_value_input(model_class):
return model_class._new_from_openapi_data(model_data, **kw_args)
return model_class(model_data, **kw_args)
else:
return model_class._new_from_openapi_data(*model_data, **kw_args)
return model_class(*model_data, **kw_args)
if isinstance(model_data, dict):
kw_args.update(model_data)
return model_class._new_from_openapi_data(**kw_args)
kw_args.update(change_keys_js_to_python(model_data, model_class))
return model_class(**kw_args)
elif isinstance(model_data, PRIMITIVE_TYPES):
return model_class._new_from_openapi_data(model_data, **kw_args)
return model_class(model_data, **kw_args)


def deserialize_file(response_data, temp_folder_path, content_disposition=None):
Expand Down
30 changes: 6 additions & 24 deletions src/datadog_api_client/model_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -184,24 +184,6 @@ def __new__(cls, *args, **kwargs):

return super(OpenApiModel, cls).__new__(cls)

@classmethod
def _new_from_openapi_data(cls_, *args, **kwargs):
kwargs = change_keys_js_to_python(kwargs, cls_)
if len(args) == 1:
arg = args[0]
if arg is None and is_type_nullable(cls_):
# The input data is the 'null' value and the type is nullable.
return None

if issubclass(cls_, ModelComposed) and allows_single_value_input(cls_):
model_kwargs = {}
oneof_instance = get_oneof_instance(cls_, model_kwargs, kwargs, model_arg=arg)
return oneof_instance

self = super(OpenApiModel, cls_).__new__(cls_)
cls_.__init__(self, *args, **kwargs)
return self

def __init__(self, kwargs):
"""
:param _check_type: If True, values for parameters in openapi_types
Expand Down Expand Up @@ -1108,17 +1090,17 @@ def deserialize_model(model_data, model_class, path_to_item, check_type, configu
)

if issubclass(model_class, ModelSimple):
return model_class._new_from_openapi_data(model_data, **kw_args)
return model_class(model_data, **kw_args)
elif isinstance(model_data, list):
if issubclass(model_class, ModelComposed) and allows_single_value_input(model_class):
return model_class._new_from_openapi_data(model_data, **kw_args)
return model_class(model_data, **kw_args)
else:
return model_class._new_from_openapi_data(*model_data, **kw_args)
return model_class(*model_data, **kw_args)
if isinstance(model_data, dict):
kw_args.update(model_data)
return model_class._new_from_openapi_data(**kw_args)
kw_args.update(change_keys_js_to_python(model_data, model_class))
return model_class(**kw_args)
elif isinstance(model_data, PRIMITIVE_TYPES):
return model_class._new_from_openapi_data(model_data, **kw_args)
return model_class(model_data, **kw_args)


def deserialize_file(response_data, temp_folder_path, content_disposition=None):
Expand Down