# Path: ironicclient/common/base.py
# def getid(obj):
#     def __init__(self, api):
#     def _path(self, resource_id=None):
#     def resource_class(self):
#     def _resource_name(self):
#     def _get(self, resource_id, fields=None, os_ironic_api_version=None,
#              global_request_id=None):
#     def _get_as_dict(self, resource_id, fields=None,
#                      os_ironic_api_version=None, global_request_id=None):
#     def _format_body_data(self, body, response_key):
#     def _list_pagination(self, url, response_key=None, obj_class=None,
#                          limit=None, os_ironic_api_version=None,
#                          global_request_id=None):
#     def __list(self, url, response_key=None, body=None,
#                os_ironic_api_version=None, global_request_id=None):
#     def _list(self, url, response_key=None, obj_class=None, body=None,
#               os_ironic_api_version=None, global_request_id=None):
#     def _list_primitives(self, url, response_key=None,
#                          os_ironic_api_version=None, global_request_id=None):
#     def _update(self, resource_id, patch, method='PATCH',
#                 os_ironic_api_version=None, global_request_id=None,
#                 params=None):
#     def _delete(self, resource_id,
#                 os_ironic_api_version=None, global_request_id=None):
#     def _creation_attributes(self):
#     def create(self, os_ironic_api_version=None, global_request_id=None,
#                **kwargs):
#     def to_dict(self):
# class Manager(object, metaclass=abc.ABCMeta):
# class CreateManager(Manager, metaclass=abc.ABCMeta):
# class Resource(base.Resource):
# 
# Path: ironicclient/common/i18n.py
# def _(msg):
#     return msg
# 
# Path: ironicclient/common/utils.py
# class HelpFormatter(argparse.HelpFormatter):
#     def start_section(self, heading):
# def define_command(subparsers, command, callback, cmd_mapper):
# def define_commands_from_module(subparsers, command_module, cmd_mapper):
# def split_and_deserialize(string):
# def key_value_pairs_to_dict(key_value_pairs):
# def args_array_to_dict(kwargs, key_to_convert):
# def args_array_to_patch(op, attributes):
# def convert_list_props_to_comma_separated(data, props=None):
# def common_params_for_list(args, fields, field_labels):
# def common_filters(marker=None, limit=None, sort_key=None, sort_dir=None,
#                    fields=None, detail=False):
# def tempdir(*args, **kwargs):
# def make_configdrive(path):
# def check_empty_arg(arg, arg_descriptor):
# def bool_argument_value(arg_name, bool_str, strict=True, default=False):
# def check_for_invalid_fields(fields, valid_fields):
# def get_from_stdin(info_desc):
# def handle_json_or_file_arg(json_arg):
# def poll(timeout, poll_interval, poll_delay_function, timeout_message):
# def handle_json_arg(json_arg, info_desc):
# 
# Path: ironicclient/exc.py
# class AmbiguousAuthSystem(exceptions.ClientException):
# class InvalidAttribute(exceptions.ClientException):
# class StateTransitionFailed(exceptions.ClientException):
# class StateTransitionTimeout(exceptions.ClientException):
# def from_response(response, message=None, traceback=None, method=None,
#                   url=None):


from ironicclient.common import base
from ironicclient.common.i18n import _
from ironicclient.common import utils
from ironicclient import exc
               (see Ironic's api.max_limit option).

        :param sort_key: Optional, field used for sorting.

        :param sort_dir: Optional, direction of sorting, either 'asc' (the
                         default) or 'desc'.

        :param detail: Optional, boolean whether to return detailed information
                       about deploy templates.

        :param fields: Optional, a list with a specified set of fields
                       of the resource to be returned. Can not be used
                       when 'detail' is set.

        :param os_ironic_api_version: String version (e.g. "1.35") to use for
            the request.  If not specified, the client's default is used.

        :param global_request_id: String containing global request ID header
            value (in form "req-<UUID>") to use for the request.

        :returns: A list of deploy templates.

        """
        if limit is not None:
            limit = int(limit)

        if detail and fields:
            raise exc.InvalidAttribute(_("Can't fetch a subset of fields "
                                         "with 'detail' set"))


# Path: ironicclient/common/base.py
# def getid(obj):
#     def __init__(self, api):
#     def _path(self, resource_id=None):
#     def resource_class(self):
#     def _resource_name(self):
#     def _get(self, resource_id, fields=None, os_ironic_api_version=None,
#              global_request_id=None):
#     def _get_as_dict(self, resource_id, fields=None,
#                      os_ironic_api_version=None, global_request_id=None):
#     def _format_body_data(self, body, response_key):
#     def _list_pagination(self, url, response_key=None, obj_class=None,
#                          limit=None, os_ironic_api_version=None,
#                          global_request_id=None):
#     def __list(self, url, response_key=None, body=None,
#                os_ironic_api_version=None, global_request_id=None):
#     def _list(self, url, response_key=None, obj_class=None, body=None,
#               os_ironic_api_version=None, global_request_id=None):
#     def _list_primitives(self, url, response_key=None,
#                          os_ironic_api_version=None, global_request_id=None):
#     def _update(self, resource_id, patch, method='PATCH',
#                 os_ironic_api_version=None, global_request_id=None,
#                 params=None):
#     def _delete(self, resource_id,
#                 os_ironic_api_version=None, global_request_id=None):
#     def _creation_attributes(self):
#     def create(self, os_ironic_api_version=None, global_request_id=None,
#                **kwargs):
#     def to_dict(self):
# class Manager(object, metaclass=abc.ABCMeta):
# class CreateManager(Manager, metaclass=abc.ABCMeta):
# class Resource(base.Resource):
# 
# Path: ironicclient/common/i18n.py
# def _(msg):
#     return msg
# 
# Path: ironicclient/common/utils.py
# class HelpFormatter(argparse.HelpFormatter):
#     def start_section(self, heading):
# def define_command(subparsers, command, callback, cmd_mapper):
# def define_commands_from_module(subparsers, command_module, cmd_mapper):
# def split_and_deserialize(string):
# def key_value_pairs_to_dict(key_value_pairs):
# def args_array_to_dict(kwargs, key_to_convert):
# def args_array_to_patch(op, attributes):
# def convert_list_props_to_comma_separated(data, props=None):
# def common_params_for_list(args, fields, field_labels):
# def common_filters(marker=None, limit=None, sort_key=None, sort_dir=None,
#                    fields=None, detail=False):
# def tempdir(*args, **kwargs):
# def make_configdrive(path):
# def check_empty_arg(arg, arg_descriptor):
# def bool_argument_value(arg_name, bool_str, strict=True, default=False):
# def check_for_invalid_fields(fields, valid_fields):
# def get_from_stdin(info_desc):
# def handle_json_or_file_arg(json_arg):
# def poll(timeout, poll_interval, poll_delay_function, timeout_message):
# def handle_json_arg(json_arg, info_desc):
# 
# Path: ironicclient/exc.py
# class AmbiguousAuthSystem(exceptions.ClientException):
# class InvalidAttribute(exceptions.ClientException):
# class StateTransitionFailed(exceptions.ClientException):
# class StateTransitionTimeout(exceptions.ClientException):
# def from_response(response, message=None, traceback=None, method=None,
#                   url=None):


# Path: ironicclient/v1/deploy_template.py
from ironicclient.common import base
from ironicclient.common.i18n import _
from ironicclient.common import utils
from ironicclient import exc

               (see Ironic's api.max_limit option).

        :param sort_key: Optional, field used for sorting.

        :param sort_dir: Optional, direction of sorting, either 'asc' (the
                         default) or 'desc'.

        :param detail: Optional, boolean whether to return detailed information
                       about deploy templates.

        :param fields: Optional, a list with a specified set of fields
                       of the resource to be returned. Can not be used
                       when 'detail' is set.

        :param os_ironic_api_version: String version (e.g. "1.35") to use for
            the request.  If not specified, the client's default is used.

        :param global_request_id: String containing global request ID header
            value (in form "req-<UUID>") to use for the request.

        :returns: A list of deploy templates.

        """
        if limit is not None:
            limit = int(limit)

        if detail and fields:
            raise exc.InvalidAttribute(_("Can't fetch a subset of fields "
                                         "with 'detail' set"))


        filters = utils.common_filters(marker, limit, sort_key, sort_dir,