def analyse_patch_request_errors(request_validator: UserRequest, data: Data, model_name: str, class_parameters: dict) \ -> Union[tuple, None]: try: request_validator.existent_filename_validator(model_name) except Exception as nonexistent_model_filename: return ( jsonify( {Constants.MESSAGE_RESULT: str(nonexistent_model_filename)}), Constants.HTTP_STATUS_CODE_NOT_FOUND, ) module_path, class_name = data.get_module_and_class_from_a_model( model_name) try: request_validator.valid_class_parameters_validator( module_path, class_name, class_parameters) except Exception as invalid_function_parameters: return ( jsonify( {Constants.MESSAGE_RESULT: str(invalid_function_parameters)}), Constants.HTTP_STATUS_CODE_NOT_ACCEPTABLE, ) return None
def analyse_post_request_errors(request_validator: UserRequest, model_name: str, module_path: str, class_name: str, class_parameters: dict) \ -> Union[tuple, None]: try: request_validator.not_duplicated_filename_validator( model_name ) except Exception as duplicated_model_filename: return ( jsonify({Constants.MESSAGE_RESULT: str(duplicated_model_filename)}), Constants.HTTP_STATUS_CODE_CONFLICT, ) try: request_validator.available_module_path_validator( module_path ) except Exception as invalid_tool_name: return ( jsonify({Constants.MESSAGE_RESULT: str(invalid_tool_name)}), Constants.HTTP_STATUS_CODE_NOT_ACCEPTABLE, ) try: request_validator.valid_class_validator( module_path, class_name ) except Exception as invalid_function_name: return ( jsonify({Constants.MESSAGE_RESULT: str(invalid_function_name)}), Constants.HTTP_STATUS_CODE_NOT_ACCEPTABLE, ) try: request_validator.valid_class_parameters_validator( module_path, class_name, class_parameters ) except Exception as invalid_function_parameters: return ( jsonify( {Constants.MESSAGE_RESULT: str(invalid_function_parameters)}), Constants.HTTP_STATUS_CODE_NOT_ACCEPTABLE, ) return None