Get and serialize positional and named arguments. :return: (positional_args, named_args) :rtype: (``str``, ``dict``)
(action_parameters, action_db)
| 354 | |
| 355 | |
| 356 | def get_args(action_parameters, action_db): |
| 357 | """ |
| 358 | |
| 359 | Get and serialize positional and named arguments. |
| 360 | |
| 361 | :return: (positional_args, named_args) |
| 362 | :rtype: (``str``, ``dict``) |
| 363 | """ |
| 364 | position_args_dict = _get_position_arg_dict(action_parameters, action_db) |
| 365 | |
| 366 | action_db_parameters = action_db.parameters or {} |
| 367 | |
| 368 | positional_args = [] |
| 369 | positional_args_keys = set() |
| 370 | for _, arg in six.iteritems(position_args_dict): |
| 371 | arg_type = action_db_parameters.get(arg, {}).get("type", None) |
| 372 | |
| 373 | # Perform serialization for positional arguments |
| 374 | arg_value = action_parameters.get(arg, None) |
| 375 | arg_value = serialize_positional_argument( |
| 376 | argument_type=arg_type, argument_value=arg_value |
| 377 | ) |
| 378 | |
| 379 | positional_args.append(arg_value) |
| 380 | positional_args_keys.add(arg) |
| 381 | |
| 382 | named_args = {} |
| 383 | for param in action_parameters: |
| 384 | if param not in positional_args_keys: |
| 385 | named_args[param] = action_parameters.get(param) |
| 386 | |
| 387 | return positional_args, named_args |
| 388 | |
| 389 | |
| 390 | def _get_position_arg_dict(action_parameters, action_db): |
nothing calls this directly
no test coverage detected