From 26ebe3e68b413c3151b12885da713f9be556e80b Mon Sep 17 00:00:00 2001 From: Daniel Wagner-Hall Date: Tue, 8 Sep 2015 16:27:20 +0100 Subject: [PATCH] Add ability to refer to aliases of endpoints --- .../matrix_templates/templates/http-api.tmpl | 6 ++++++ templating/matrix_templates/units.py | 15 ++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/templating/matrix_templates/templates/http-api.tmpl b/templating/matrix_templates/templates/http-api.tmpl index 1384daab..a0b25924 100644 --- a/templating/matrix_templates/templates/http-api.tmpl +++ b/templating/matrix_templates/templates/http-api.tmpl @@ -1,5 +1,10 @@ ``{{endpoint.method}} {{endpoint.path}}`` {{(5 + (endpoint.path | length) + (endpoint.method | length)) * title_kind}} +{% if "alias_for_path" in endpoint -%} +``{{endpoint.path}}`` is an alias for `{{endpoint.alias_for_path}}`_. + +.. _`{{endpoint.alias_for_path}}`: #{{endpoint.alias_link}} +{% else -%} {{endpoint.desc | wrap(80)}} @@ -62,3 +67,4 @@ Example:: {{res["example"] | indent_block(2)}} {% endfor %} +{% endif -%} diff --git a/templating/matrix_templates/units.py b/templating/matrix_templates/units.py index c4ed8358..89b34bb1 100644 --- a/templating/matrix_templates/units.py +++ b/templating/matrix_templates/units.py @@ -105,11 +105,24 @@ class MatrixUnits(Units): for path in api["paths"]: for method in api["paths"][path]: single_api = api["paths"][path][method] + + full_path = api.get("basePath", "") + path + alias_for_path = single_api.get("x-alias-for-path", "") + alias_link = single_api.get("x-alias-link", "") + if alias_for_path: + endpoints.append({ + "method": method.upper(), + "path": full_path, + "alias_for_path": alias_for_path, + "alias_link": alias_link + }) + continue + endpoint = { "title": single_api.get("summary", ""), "desc": single_api.get("description", single_api.get("summary", "")), "method": method.upper(), - "path": api.get("basePath", "") + path, + "path": full_path, "requires_auth": "security" in single_api, "rate_limited": 429 in single_api.get("responses", {}), "req_params": [],