{"action":"created","comment":{"url":"https://api.github.com/repos/rightscale/praxis/pulls/comments/37664953","id":37664953,"diff_hunk":"@@ -188,32 +188,69 @@ def description(text = nil)\n       @description\n     end\n \n+    def self.url_description(route:, params_example:, params: )# TODO: what context to use?, context: [r.id])\n+      route_description = route.describe\n+\n+      example_hash = params_example ? params_example.dump : {}\n+      hash = self.url_example(route: route, example_hash: example_hash, params: params)\n+\n+      query_string = URI.encode_www_form(hash[:query_params])#collect {|(name, value)| \"#{name.to_s}=#{value.to_s}\"}.join('&')\n+      url = hash[:url]\n+      url = [url,query_string].join('?') unless query_string.empty?\n+\n+      route_description[:example] = url\n+      route_description\n+    end\n+\n+    def self.url_example(route:, example_hash:{}, params: )# TODO: what context to use?, context: [r.id])","path":"lib/praxis/action_definition.rb","position":36,"original_position":36,"commit_id":"4924a5151f7d02b30c222ef166b5ae5cbaaaea40","original_commit_id":"4924a5151f7d02b30c222ef166b5ae5cbaaaea40","user":{"login":"blanquer","id":33885,"avatar_url":"https://avatars.githubusercontent.com/u/33885?v=3","gravatar_id":"","url":"https://api.github.com/users/blanquer","html_url":"https://github.com/blanquer","followers_url":"https://api.github.com/users/blanquer/followers","following_url":"https://api.github.com/users/blanquer/following{/other_user}","gists_url":"https://api.github.com/users/blanquer/gists{/gist_id}","starred_url":"https://api.github.com/users/blanquer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blanquer/subscriptions","organizations_url":"https://api.github.com/users/blanquer/orgs","repos_url":"https://api.github.com/users/blanquer/repos","events_url":"https://api.github.com/users/blanquer/events{/privacy}","received_events_url":"https://api.github.com/users/blanquer/received_events","type":"User","site_admin":false},"body":"address TODO","created_at":"2015-08-21T18:43:14Z","updated_at":"2015-08-21T18:43:14Z","html_url":"https://github.com/rightscale/praxis/pull/181#discussion_r37664953","pull_request_url":"https://api.github.com/repos/rightscale/praxis/pulls/181","_links":{"self":{"href":"https://api.github.com/repos/rightscale/praxis/pulls/comments/37664953"},"html":{"href":"https://github.com/rightscale/praxis/pull/181#discussion_r37664953"},"pull_request":{"href":"https://api.github.com/repos/rightscale/praxis/pulls/181"}}},"pull_request":{"url":"https://api.github.com/repos/rightscale/praxis/pulls/181","id":34512938,"html_url":"https://github.com/rightscale/praxis/pull/181","diff_url":"https://github.com/rightscale/praxis/pull/181.diff","patch_url":"https://github.com/rightscale/praxis/pull/181.patch","issue_url":"https://api.github.com/repos/rightscale/praxis/issues/181","number":181,"state":"open","locked":false,"title":"New and improved Praxis generated docs","user":{"login":"blanquer","id":33885,"avatar_url":"https://avatars.githubusercontent.com/u/33885?v=3","gravatar_id":"","url":"https://api.github.com/users/blanquer","html_url":"https://github.com/blanquer","followers_url":"https://api.github.com/users/blanquer/followers","following_url":"https://api.github.com/users/blanquer/following{/other_user}","gists_url":"https://api.github.com/users/blanquer/gists{/gist_id}","starred_url":"https://api.github.com/users/blanquer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blanquer/subscriptions","organizations_url":"https://api.github.com/users/blanquer/orgs","repos_url":"https://api.github.com/users/blanquer/repos","events_url":"https://api.github.com/users/blanquer/events{/privacy}","received_events_url":"https://api.github.com/users/blanquer/received_events","type":"User","site_admin":false},"body":"* More compact format:\r\n  * 1 file per api version: including info, resources, schemas and traits.\r\n  * 1 single index file with global info plus just a list of version names\r\n* new task currently usable through `bundle exec rake praxis:docs:experiments`\r\n  * NOTE: leaves the current doc generation tasks and code intact.\r\n* Follow reachable types through memory objects for more robust discovery\r\n\r\nSigned-off-by: Josep M. Blanquer <blanquer@rightscale.com>","created_at":"2015-05-01T00:11:30Z","updated_at":"2015-08-21T18:43:15Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d3f9c408b503e0daa10aba38f0dd37bf09b457ed","assignee":{"login":"blanquer","id":33885,"avatar_url":"https://avatars.githubusercontent.com/u/33885?v=3","gravatar_id":"","url":"https://api.github.com/users/blanquer","html_url":"https://github.com/blanquer","followers_url":"https://api.github.com/users/blanquer/followers","following_url":"https://api.github.com/users/blanquer/following{/other_user}","gists_url":"https://api.github.com/users/blanquer/gists{/gist_id}","starred_url":"https://api.github.com/users/blanquer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blanquer/subscriptions","organizations_url":"https://api.github.com/users/blanquer/orgs","repos_url":"https://api.github.com/users/blanquer/repos","events_url":"https://api.github.com/users/blanquer/events{/privacy}","received_events_url":"https://api.github.com/users/blanquer/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/rightscale/praxis/pulls/181/commits","review_comments_url":"https://api.github.com/repos/rightscale/praxis/pulls/181/comments","review_comment_url":"https://api.github.com/repos/rightscale/praxis/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rightscale/praxis/issues/181/comments","statuses_url":"https://api.github.com/repos/rightscale/praxis/statuses/4924a5151f7d02b30c222ef166b5ae5cbaaaea40","head":{"label":"rightscale:overhauling_generated_docs","ref":"overhauling_generated_docs","sha":"4924a5151f7d02b30c222ef166b5ae5cbaaaea40","user":{"login":"rightscale","id":27964,"avatar_url":"https://avatars.githubusercontent.com/u/27964?v=3","gravatar_id":"","url":"https://api.github.com/users/rightscale","html_url":"https://github.com/rightscale","followers_url":"https://api.github.com/users/rightscale/followers","following_url":"https://api.github.com/users/rightscale/following{/other_user}","gists_url":"https://api.github.com/users/rightscale/gists{/gist_id}","starred_url":"https://api.github.com/users/rightscale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rightscale/subscriptions","organizations_url":"https://api.github.com/users/rightscale/orgs","repos_url":"https://api.github.com/users/rightscale/repos","events_url":"https://api.github.com/users/rightscale/events{/privacy}","received_events_url":"https://api.github.com/users/rightscale/received_events","type":"Organization","site_admin":false},"repo":{"id":21172715,"name":"praxis","full_name":"rightscale/praxis","owner":{"login":"rightscale","id":27964,"avatar_url":"https://avatars.githubusercontent.com/u/27964?v=3","gravatar_id":"","url":"https://api.github.com/users/rightscale","html_url":"https://github.com/rightscale","followers_url":"https://api.github.com/users/rightscale/followers","following_url":"https://api.github.com/users/rightscale/following{/other_user}","gists_url":"https://api.github.com/users/rightscale/gists{/gist_id}","starred_url":"https://api.github.com/users/rightscale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rightscale/subscriptions","organizations_url":"https://api.github.com/users/rightscale/orgs","repos_url":"https://api.github.com/users/rightscale/repos","events_url":"https://api.github.com/users/rightscale/events{/privacy}","received_events_url":"https://api.github.com/users/rightscale/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rightscale/praxis","description":"Praxis is a framework that focuses on both the design and implementation aspects of creating APIs.","fork":false,"url":"https://api.github.com/repos/rightscale/praxis","forks_url":"https://api.github.com/repos/rightscale/praxis/forks","keys_url":"https://api.github.com/repos/rightscale/praxis/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rightscale/praxis/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rightscale/praxis/teams","hooks_url":"https://api.github.com/repos/rightscale/praxis/hooks","issue_events_url":"https://api.github.com/repos/rightscale/praxis/issues/events{/number}","events_url":"https://api.github.com/repos/rightscale/praxis/events","assignees_url":"https://api.github.com/repos/rightscale/praxis/assignees{/user}","branches_url":"https://api.github.com/repos/rightscale/praxis/branches{/branch}","tags_url":"https://api.github.com/repos/rightscale/praxis/tags","blobs_url":"https://api.github.com/repos/rightscale/praxis/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rightscale/praxis/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rightscale/praxis/git/refs{/sha}","trees_url":"https://api.github.com/repos/rightscale/praxis/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rightscale/praxis/statuses/{sha}","languages_url":"https://api.github.com/repos/rightscale/praxis/languages","stargazers_url":"https://api.github.com/repos/rightscale/praxis/stargazers","contributors_url":"https://api.github.com/repos/rightscale/praxis/contributors","subscribers_url":"https://api.github.com/repos/rightscale/praxis/subscribers","subscription_url":"https://api.github.com/repos/rightscale/praxis/subscription","commits_url":"https://api.github.com/repos/rightscale/praxis/commits{/sha}","git_commits_url":"https://api.github.com/repos/rightscale/praxis/git/commits{/sha}","comments_url":"https://api.github.com/repos/rightscale/praxis/comments{/number}","issue_comment_url":"https://api.github.com/repos/rightscale/praxis/issues/comments{/number}","contents_url":"https://api.github.com/repos/rightscale/praxis/contents/{+path}","compare_url":"https://api.github.com/repos/rightscale/praxis/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rightscale/praxis/merges","archive_url":"https://api.github.com/repos/rightscale/praxis/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rightscale/praxis/downloads","issues_url":"https://api.github.com/repos/rightscale/praxis/issues{/number}","pulls_url":"https://api.github.com/repos/rightscale/praxis/pulls{/number}","milestones_url":"https://api.github.com/repos/rightscale/praxis/milestones{/number}","notifications_url":"https://api.github.com/repos/rightscale/praxis/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rightscale/praxis/labels{/name}","releases_url":"https://api.github.com/repos/rightscale/praxis/releases{/id}","created_at":"2014-06-24T16:40:17Z","updated_at":"2015-07-19T06:02:49Z","pushed_at":"2015-08-20T21:16:07Z","git_url":"git://github.com/rightscale/praxis.git","ssh_url":"git@github.com:rightscale/praxis.git","clone_url":"https://github.com/rightscale/praxis.git","svn_url":"https://github.com/rightscale/praxis","homepage":"praxis-framework.io","size":7708,"stargazers_count":210,"watchers_count":210,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":24,"mirror_url":null,"open_issues_count":31,"forks":24,"open_issues":31,"watchers":210,"default_branch":"master"}},"base":{"label":"rightscale:master","ref":"master","sha":"2c9932b20165d1e367fabd9fed775f97e0e2c555","user":{"login":"rightscale","id":27964,"avatar_url":"https://avatars.githubusercontent.com/u/27964?v=3","gravatar_id":"","url":"https://api.github.com/users/rightscale","html_url":"https://github.com/rightscale","followers_url":"https://api.github.com/users/rightscale/followers","following_url":"https://api.github.com/users/rightscale/following{/other_user}","gists_url":"https://api.github.com/users/rightscale/gists{/gist_id}","starred_url":"https://api.github.com/users/rightscale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rightscale/subscriptions","organizations_url":"https://api.github.com/users/rightscale/orgs","repos_url":"https://api.github.com/users/rightscale/repos","events_url":"https://api.github.com/users/rightscale/events{/privacy}","received_events_url":"https://api.github.com/users/rightscale/received_events","type":"Organization","site_admin":false},"repo":{"id":21172715,"name":"praxis","full_name":"rightscale/praxis","owner":{"login":"rightscale","id":27964,"avatar_url":"https://avatars.githubusercontent.com/u/27964?v=3","gravatar_id":"","url":"https://api.github.com/users/rightscale","html_url":"https://github.com/rightscale","followers_url":"https://api.github.com/users/rightscale/followers","following_url":"https://api.github.com/users/rightscale/following{/other_user}","gists_url":"https://api.github.com/users/rightscale/gists{/gist_id}","starred_url":"https://api.github.com/users/rightscale/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rightscale/subscriptions","organizations_url":"https://api.github.com/users/rightscale/orgs","repos_url":"https://api.github.com/users/rightscale/repos","events_url":"https://api.github.com/users/rightscale/events{/privacy}","received_events_url":"https://api.github.com/users/rightscale/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rightscale/praxis","description":"Praxis is a framework that focuses on both the design and implementation aspects of creating APIs.","fork":false,"url":"https://api.github.com/repos/rightscale/praxis","forks_url":"https://api.github.com/repos/rightscale/praxis/forks","keys_url":"https://api.github.com/repos/rightscale/praxis/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rightscale/praxis/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rightscale/praxis/teams","hooks_url":"https://api.github.com/repos/rightscale/praxis/hooks","issue_events_url":"https://api.github.com/repos/rightscale/praxis/issues/events{/number}","events_url":"https://api.github.com/repos/rightscale/praxis/events","assignees_url":"https://api.github.com/repos/rightscale/praxis/assignees{/user}","branches_url":"https://api.github.com/repos/rightscale/praxis/branches{/branch}","tags_url":"https://api.github.com/repos/rightscale/praxis/tags","blobs_url":"https://api.github.com/repos/rightscale/praxis/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rightscale/praxis/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rightscale/praxis/git/refs{/sha}","trees_url":"https://api.github.com/repos/rightscale/praxis/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rightscale/praxis/statuses/{sha}","languages_url":"https://api.github.com/repos/rightscale/praxis/languages","stargazers_url":"https://api.github.com/repos/rightscale/praxis/stargazers","contributors_url":"https://api.github.com/repos/rightscale/praxis/contributors","subscribers_url":"https://api.github.com/repos/rightscale/praxis/subscribers","subscription_url":"https://api.github.com/repos/rightscale/praxis/subscription","commits_url":"https://api.github.com/repos/rightscale/praxis/commits{/sha}","git_commits_url":"https://api.github.com/repos/rightscale/praxis/git/commits{/sha}","comments_url":"https://api.github.com/repos/rightscale/praxis/comments{/number}","issue_comment_url":"https://api.github.com/repos/rightscale/praxis/issues/comments{/number}","contents_url":"https://api.github.com/repos/rightscale/praxis/contents/{+path}","compare_url":"https://api.github.com/repos/rightscale/praxis/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rightscale/praxis/merges","archive_url":"https://api.github.com/repos/rightscale/praxis/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rightscale/praxis/downloads","issues_url":"https://api.github.com/repos/rightscale/praxis/issues{/number}","pulls_url":"https://api.github.com/repos/rightscale/praxis/pulls{/number}","milestones_url":"https://api.github.com/repos/rightscale/praxis/milestones{/number}","notifications_url":"https://api.github.com/repos/rightscale/praxis/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rightscale/praxis/labels{/name}","releases_url":"https://api.github.com/repos/rightscale/praxis/releases{/id}","created_at":"2014-06-24T16:40:17Z","updated_at":"2015-07-19T06:02:49Z","pushed_at":"2015-08-20T21:16:07Z","git_url":"git://github.com/rightscale/praxis.git","ssh_url":"git@github.com:rightscale/praxis.git","clone_url":"https://github.com/rightscale/praxis.git","svn_url":"https://github.com/rightscale/praxis","homepage":"praxis-framework.io","size":7708,"stargazers_count":210,"watchers_count":210,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":24,"mirror_url":null,"open_issues_count":31,"forks":24,"open_issues":31,"watchers":210,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rightscale/praxis/pulls/181"},"html":{"href":"https://github.com/rightscale/praxis/pull/181"},"issue":{"href":"https://api.github.com/repos/rightscale/praxis/issues/181"},"comments":{"href":"https://api.github.com/repos/rightscale/praxis/issues/181/comments"},"review_comments":{"href":"https://api.github.com/repos/rightscale/praxis/pulls/181/comments"},"review_comment":{"href":"https://api.github.com/repos/rightscale/praxis/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rightscale/praxis/pulls/181/commits"},"statuses":{"href":"https://api.github.com/repos/rightscale/praxis/statuses/4924a5151f7d02b30c222ef166b5ae5cbaaaea40"}}}}