167        resource_api.name = re.sub(
'\..*', 
'',
 
  168                                   os.path.basename(resource_api.path))
 
  170        resource_api.name_caps = resource_api.name.upper()
 
  171        resource_api.name_title = resource_api.name.capitalize()
 
  172        resource_api.c_name = 
snakify(resource_api.name)
 
  174        if resource_api.api_declaration:
 
  176            for api 
in resource_api.api_declaration.apis:
 
  177                segment = resource_api.root_path.get_child(api.path.split(
'/'))
 
  178                for operation 
in api.operations:
 
  179                    segment.operations.append(operation)
 
  180                api.full_name = segment.full_name
 
  184            if resource_api.root_path.num_children() != 1:
 
  186                    "Should not mix resources in one API declaration", context)
 
  188            resource_api.root_path = list(resource_api.root_path.children())[0]
 
  189            if resource_api.name != resource_api.root_path.name:
 
  191                    "API declaration name should match", context)
 
  192            resource_api.root_full_name = resource_api.root_path.full_name
 
 
  199        operation.c_nickname = 
snakify(operation.nickname)
 
  200        operation.c_http_method = 
'AST_HTTP_' + operation.http_method
 
  201        if not operation.summary.endswith(
"."):
 
  202            raise SwaggerError(
"Summary should end with .", context)
 
  203        operation.wiki_summary = 
wikify(operation.summary 
or "")
 
  204        operation.wiki_notes = 
wikify(operation.notes 
or "")
 
  205        for error_response 
in operation.error_responses:
 
  206            error_response.wiki_reason = 
wikify(error_response.reason 
or "")
 
  207        operation.parse_body = (operation.body_parameter 
or operation.has_query_parameters) 
and True 
 
  210        if parameter.param_type == 
'body':
 
  211            parameter.is_body_parameter = 
True;
 
  212            parameter.c_data_type = 
'struct ast_json *' 
  214            parameter.is_body_parameter = 
False;
 
  217                    "Invalid parameter type %s" % parameter.data_type, context)
 
  219            parameter.c_data_type = self.
type_mapping[parameter.data_type]
 
  224        parameter.c_name = 
snakify(parameter.name)
 
  226        if parameter.c_data_type.endswith(
'*'):
 
  227            parameter.c_space = 
'' 
  229            parameter.c_space = 
' ' 
  230        parameter.wiki_description = 
wikify(parameter.description)
 
  231        if parameter.allowable_values:
 
  232            parameter.wiki_allowable_values = parameter.allowable_values.to_wiki()
 
  234            parameter.wiki_allowable_values = 
None