def process_service(self, filename):
data = self.get_json_from_file(os.path.join(self.dir, filename))
request_filename = self.write_tmp(data['request'] or '')
response_filename = self.write_tmp(data['response'] or '')
example = HTTPExample(
'http:example',
arguments=['curl', 'httpie', 'python-requests'],
options={
'request': request_filename,
'response': response_filename
},
content=self.content,
lineno=self.lineno,
content_offset=self.content_offset,
block_text='.. http:example::',
state=self.state,
state_machine=self.state_machine
)
method = data['method'].upper()
service = data['service']
name = service.get('name') or ''
path_scheme = data.get('path_scheme') or name
summary = service.get('summary') or ''
permission = service.get('permission') or ''
container = nodes.container('')
container.append(addnodes.desc_name('', method + ' '))
container.append(addnodes.desc_name('', path_scheme))
inner_container = nodes.definition('')
container.append(inner_container)
inner_container.append(nodes.paragraph(summary, summary))
inner_container.append(addnodes.desc_name('permission', 'permission'))
perm_label = ': ' + permission
inner_container.append(addnodes.desc_annotation(perm_label, perm_label))
inner_container.append(example.run()[0])
# extra = nodes.paragraph('', '')
# inner_container.append(extra)
# if service.get('responses'):
# extra.append(nodes.strong('', 'Responses'))
# blist = nodes.bullet_list('')
# extra.append(blist)
# for code, config in service['responses'].items():
# blist.append(render_response(code, 'Hello'))
# cleanup
os.remove(request_filename)
os.remove(response_filename)
return container
评论列表
文章目录