{"action":"created","comment":{"url":"https://api.github.com/repos/rusoto/rusoto/pulls/comments/59523590","id":59523590,"diff_hunk":"@@ -22,6 +22,7 @@ syntex = { version = \"0.30.0\", optional = true }\n \n [dependencies]\n Inflector = \"0.2.0\"\n+lazy_static = \"0.1\"","path":"codegen/Cargo.toml","position":4,"original_position":4,"commit_id":"22b11d3493cce7ad78a386792320e8c1093bfaa4","original_commit_id":"22b11d3493cce7ad78a386792320e8c1093bfaa4","user":{"login":"indiv0","id":641547,"avatar_url":"https://avatars.githubusercontent.com/u/641547?v=3","gravatar_id":"","url":"https://api.github.com/users/indiv0","html_url":"https://github.com/indiv0","followers_url":"https://api.github.com/users/indiv0/followers","following_url":"https://api.github.com/users/indiv0/following{/other_user}","gists_url":"https://api.github.com/users/indiv0/gists{/gist_id}","starred_url":"https://api.github.com/users/indiv0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/indiv0/subscriptions","organizations_url":"https://api.github.com/users/indiv0/orgs","repos_url":"https://api.github.com/users/indiv0/repos","events_url":"https://api.github.com/users/indiv0/events{/privacy}","received_events_url":"https://api.github.com/users/indiv0/received_events","type":"User","site_admin":false},"body":"No complaints from me, I'll lock it to 0.1.16.","created_at":"2016-04-13T10:07:17Z","updated_at":"2016-04-13T10:07:17Z","html_url":"https://github.com/rusoto/rusoto/pull/212#discussion_r59523590","pull_request_url":"https://api.github.com/repos/rusoto/rusoto/pulls/212","_links":{"self":{"href":"https://api.github.com/repos/rusoto/rusoto/pulls/comments/59523590"},"html":{"href":"https://github.com/rusoto/rusoto/pull/212#discussion_r59523590"},"pull_request":{"href":"https://api.github.com/repos/rusoto/rusoto/pulls/212"}}},"pull_request":{"url":"https://api.github.com/repos/rusoto/rusoto/pulls/212","id":65583389,"html_url":"https://github.com/rusoto/rusoto/pull/212","diff_url":"https://github.com/rusoto/rusoto/pull/212.diff","patch_url":"https://github.com/rusoto/rusoto/pull/212.patch","issue_url":"https://api.github.com/repos/rusoto/rusoto/issues/212","number":212,"state":"open","locked":false,"title":"[WIP] Implement Elastic Transcoder Support","user":{"login":"indiv0","id":641547,"avatar_url":"https://avatars.githubusercontent.com/u/641547?v=3","gravatar_id":"","url":"https://api.github.com/users/indiv0","html_url":"https://github.com/indiv0","followers_url":"https://api.github.com/users/indiv0/followers","following_url":"https://api.github.com/users/indiv0/following{/other_user}","gists_url":"https://api.github.com/users/indiv0/gists{/gist_id}","starred_url":"https://api.github.com/users/indiv0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/indiv0/subscriptions","organizations_url":"https://api.github.com/users/indiv0/orgs","repos_url":"https://api.github.com/users/indiv0/repos","events_url":"https://api.github.com/users/indiv0/events{/privacy}","received_events_url":"https://api.github.com/users/indiv0/received_events","type":"User","site_admin":false},"body":"**THIS IS A WORK IN PROGRESS**\r\n\r\nI'm interested in implementing Elastic Transcoder support (as I need it for a personal project), so I've begun a PR for it.\r\n\r\nI'll post updates and questions here as I work on it.\r\n\r\n# Current Status\r\n\r\n* [x] Add `ets` feature to `Cargo.toml`\r\n* [x] Generate `elastictranscoder` `Service` in `build.rs`\r\n* [ ] Implement `rest-json` generator\r\n    * [x] Add `rest-json` generator\r\n    * [x] Add `request_uri` format code generator function\r\n    * [x] Add `querystring` format code generator function\r\n    * [ ] Verify it works against minimum subset of `Ets` operations\r\n        * [x] `read_job`\r\n        * [x] `create_job`\r\n        * [x] `list_jobs_by_pipeline`\r\n        * [x] `list_pipelines`\r\n        * [x] `list_presets`\r\n        * ...?\r\n* [ ] Add tests\r\n    * [ ] `cancel_job`\r\n    * [ ] `create_job`\r\n    * [ ] `create_pipeline`\r\n    * [ ] `create_preset`\r\n    * [ ] `delete_pipeline`\r\n    * [ ] `delete_preset`\r\n    * [ ] `list_jobs_by_pipeline`\r\n    * [ ] `list_jobs_by_status`\r\n    * [x] `list_pipelines`\r\n    * [x] `list_presets`\r\n    * [ ] `read_job`\r\n    * [ ] `read_pipeline`\r\n    * [ ] `read_preset`\r\n    * [ ] `test_role`\r\n    * [ ] `update_pipeline`\r\n    * [ ] `update_pipeline_notifications`\r\n    * [ ] `update_pipeline_status`\r\n* [ ] Add documentation\r\n* [ ] Update `README.md`\r\n    * [x] Add `ETS` to supported services list\r\n    * ...?\r\n* [ ] Bump version?\r\n* [ ] Squash commits\r\n* ...?\r\n\r\n# Notes\r\n\r\n* `HttpError`\r\n    * `code` is now `Option<String>` because `HttpError`s for `Ecs` don't specify it\r\n* `Metadata`\r\n    * `service_abbreviation` is now `Option<String>` because `Ecs` doesn't specify it\r\n* `generator`\r\n    * `generate_protocol` now has a match statement to retrieve the `service_abbreviation` since it's now an `Option<String>`\r\n* `HttpRequest`\r\n    * `response_code` is a new field to accommodate the `responseCode` to expect, which is provided for certain `Ets` operations.\r\n\r\n# Resources\r\n\r\n* AWS\r\n    * [Create Job - Amazon Elastic Transcoder][create-job]\r\n    * [Read Job - Amazon Elastic Transcoder][read-job]\r\n    * [Making HTTP Requests to Elastic Transcoder][making-http-requests]\r\n    * [AWS CLI Reference - Elastic Transcoder][aws-ets-reference]\r\n* botocore\r\n    * [botocore - 2012-09-25/service-2.json][botocore-ets]\r\n    * [botocore - serialize.py][botocore-serialize]\r\n\r\n[aws-ets-reference]: http://docs.aws.amazon.com/cli/latest/reference/elastictranscoder/index.html\r\n[botocore-ets]: https://github.com/boto/botocore/blob/develop/botocore/data/elastictranscoder/2012-09-25/service-2.json\r\n[botocore-serialize]: https://github.com/boto/botocore/blob/master/botocore/serialize.py\r\n[create-job]: http://docs.aws.amazon.com/elastictranscoder/latest/developerguide/create-job.html\r\n[making-http-requests]: http://docs.aws.amazon.com/elastictranscoder/latest/developerguide/making-http-requests.html\r\n[read-job]: http://docs.aws.amazon.com/elastictranscoder/latest/developerguide/get-job.html","created_at":"2016-04-07T07:10:43Z","updated_at":"2016-04-13T10:07:17Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9f4c31e45aa05603741ddc9469c7db5c216a2036","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/rusoto/rusoto/pulls/212/commits","review_comments_url":"https://api.github.com/repos/rusoto/rusoto/pulls/212/comments","review_comment_url":"https://api.github.com/repos/rusoto/rusoto/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rusoto/rusoto/issues/212/comments","statuses_url":"https://api.github.com/repos/rusoto/rusoto/statuses/22b11d3493cce7ad78a386792320e8c1093bfaa4","head":{"label":"indiv0:feature-elastictranscoder","ref":"feature-elastictranscoder","sha":"22b11d3493cce7ad78a386792320e8c1093bfaa4","user":{"login":"indiv0","id":641547,"avatar_url":"https://avatars.githubusercontent.com/u/641547?v=3","gravatar_id":"","url":"https://api.github.com/users/indiv0","html_url":"https://github.com/indiv0","followers_url":"https://api.github.com/users/indiv0/followers","following_url":"https://api.github.com/users/indiv0/following{/other_user}","gists_url":"https://api.github.com/users/indiv0/gists{/gist_id}","starred_url":"https://api.github.com/users/indiv0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/indiv0/subscriptions","organizations_url":"https://api.github.com/users/indiv0/orgs","repos_url":"https://api.github.com/users/indiv0/repos","events_url":"https://api.github.com/users/indiv0/events{/privacy}","received_events_url":"https://api.github.com/users/indiv0/received_events","type":"User","site_admin":false},"repo":{"id":55634268,"name":"rusoto","full_name":"indiv0/rusoto","owner":{"login":"indiv0","id":641547,"avatar_url":"https://avatars.githubusercontent.com/u/641547?v=3","gravatar_id":"","url":"https://api.github.com/users/indiv0","html_url":"https://github.com/indiv0","followers_url":"https://api.github.com/users/indiv0/followers","following_url":"https://api.github.com/users/indiv0/following{/other_user}","gists_url":"https://api.github.com/users/indiv0/gists{/gist_id}","starred_url":"https://api.github.com/users/indiv0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/indiv0/subscriptions","organizations_url":"https://api.github.com/users/indiv0/orgs","repos_url":"https://api.github.com/users/indiv0/repos","events_url":"https://api.github.com/users/indiv0/events{/privacy}","received_events_url":"https://api.github.com/users/indiv0/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/indiv0/rusoto","description":"AWS SDK for Rust","fork":true,"url":"https://api.github.com/repos/indiv0/rusoto","forks_url":"https://api.github.com/repos/indiv0/rusoto/forks","keys_url":"https://api.github.com/repos/indiv0/rusoto/keys{/key_id}","collaborators_url":"https://api.github.com/repos/indiv0/rusoto/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/indiv0/rusoto/teams","hooks_url":"https://api.github.com/repos/indiv0/rusoto/hooks","issue_events_url":"https://api.github.com/repos/indiv0/rusoto/issues/events{/number}","events_url":"https://api.github.com/repos/indiv0/rusoto/events","assignees_url":"https://api.github.com/repos/indiv0/rusoto/assignees{/user}","branches_url":"https://api.github.com/repos/indiv0/rusoto/branches{/branch}","tags_url":"https://api.github.com/repos/indiv0/rusoto/tags","blobs_url":"https://api.github.com/repos/indiv0/rusoto/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/indiv0/rusoto/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/indiv0/rusoto/git/refs{/sha}","trees_url":"https://api.github.com/repos/indiv0/rusoto/git/trees{/sha}","statuses_url":"https://api.github.com/repos/indiv0/rusoto/statuses/{sha}","languages_url":"https://api.github.com/repos/indiv0/rusoto/languages","stargazers_url":"https://api.github.com/repos/indiv0/rusoto/stargazers","contributors_url":"https://api.github.com/repos/indiv0/rusoto/contributors","subscribers_url":"https://api.github.com/repos/indiv0/rusoto/subscribers","subscription_url":"https://api.github.com/repos/indiv0/rusoto/subscription","commits_url":"https://api.github.com/repos/indiv0/rusoto/commits{/sha}","git_commits_url":"https://api.github.com/repos/indiv0/rusoto/git/commits{/sha}","comments_url":"https://api.github.com/repos/indiv0/rusoto/comments{/number}","issue_comment_url":"https://api.github.com/repos/indiv0/rusoto/issues/comments{/number}","contents_url":"https://api.github.com/repos/indiv0/rusoto/contents/{+path}","compare_url":"https://api.github.com/repos/indiv0/rusoto/compare/{base}...{head}","merges_url":"https://api.github.com/repos/indiv0/rusoto/merges","archive_url":"https://api.github.com/repos/indiv0/rusoto/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/indiv0/rusoto/downloads","issues_url":"https://api.github.com/repos/indiv0/rusoto/issues{/number}","pulls_url":"https://api.github.com/repos/indiv0/rusoto/pulls{/number}","milestones_url":"https://api.github.com/repos/indiv0/rusoto/milestones{/number}","notifications_url":"https://api.github.com/repos/indiv0/rusoto/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/indiv0/rusoto/labels{/name}","releases_url":"https://api.github.com/repos/indiv0/rusoto/releases{/id}","deployments_url":"https://api.github.com/repos/indiv0/rusoto/deployments","created_at":"2016-04-06T19:22:17Z","updated_at":"2016-04-06T19:22:18Z","pushed_at":"2016-04-12T08:08:33Z","git_url":"git://github.com/indiv0/rusoto.git","ssh_url":"git@github.com:indiv0/rusoto.git","clone_url":"https://github.com/indiv0/rusoto.git","svn_url":"https://github.com/indiv0/rusoto","homepage":"","size":9435,"stargazers_count":0,"watchers_count":0,"language":"Rust","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"rusoto:master","ref":"master","sha":"5ee591b3a8aa789b6396f3a51eca59a5533d500a","user":{"login":"rusoto","id":15861923,"avatar_url":"https://avatars.githubusercontent.com/u/15861923?v=3","gravatar_id":"","url":"https://api.github.com/users/rusoto","html_url":"https://github.com/rusoto","followers_url":"https://api.github.com/users/rusoto/followers","following_url":"https://api.github.com/users/rusoto/following{/other_user}","gists_url":"https://api.github.com/users/rusoto/gists{/gist_id}","starred_url":"https://api.github.com/users/rusoto/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rusoto/subscriptions","organizations_url":"https://api.github.com/users/rusoto/orgs","repos_url":"https://api.github.com/users/rusoto/repos","events_url":"https://api.github.com/users/rusoto/events{/privacy}","received_events_url":"https://api.github.com/users/rusoto/received_events","type":"Organization","site_admin":false},"repo":{"id":39107211,"name":"rusoto","full_name":"rusoto/rusoto","owner":{"login":"rusoto","id":15861923,"avatar_url":"https://avatars.githubusercontent.com/u/15861923?v=3","gravatar_id":"","url":"https://api.github.com/users/rusoto","html_url":"https://github.com/rusoto","followers_url":"https://api.github.com/users/rusoto/followers","following_url":"https://api.github.com/users/rusoto/following{/other_user}","gists_url":"https://api.github.com/users/rusoto/gists{/gist_id}","starred_url":"https://api.github.com/users/rusoto/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rusoto/subscriptions","organizations_url":"https://api.github.com/users/rusoto/orgs","repos_url":"https://api.github.com/users/rusoto/repos","events_url":"https://api.github.com/users/rusoto/events{/privacy}","received_events_url":"https://api.github.com/users/rusoto/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rusoto/rusoto","description":"AWS SDK for Rust","fork":false,"url":"https://api.github.com/repos/rusoto/rusoto","forks_url":"https://api.github.com/repos/rusoto/rusoto/forks","keys_url":"https://api.github.com/repos/rusoto/rusoto/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rusoto/rusoto/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rusoto/rusoto/teams","hooks_url":"https://api.github.com/repos/rusoto/rusoto/hooks","issue_events_url":"https://api.github.com/repos/rusoto/rusoto/issues/events{/number}","events_url":"https://api.github.com/repos/rusoto/rusoto/events","assignees_url":"https://api.github.com/repos/rusoto/rusoto/assignees{/user}","branches_url":"https://api.github.com/repos/rusoto/rusoto/branches{/branch}","tags_url":"https://api.github.com/repos/rusoto/rusoto/tags","blobs_url":"https://api.github.com/repos/rusoto/rusoto/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rusoto/rusoto/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rusoto/rusoto/git/refs{/sha}","trees_url":"https://api.github.com/repos/rusoto/rusoto/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rusoto/rusoto/statuses/{sha}","languages_url":"https://api.github.com/repos/rusoto/rusoto/languages","stargazers_url":"https://api.github.com/repos/rusoto/rusoto/stargazers","contributors_url":"https://api.github.com/repos/rusoto/rusoto/contributors","subscribers_url":"https://api.github.com/repos/rusoto/rusoto/subscribers","subscription_url":"https://api.github.com/repos/rusoto/rusoto/subscription","commits_url":"https://api.github.com/repos/rusoto/rusoto/commits{/sha}","git_commits_url":"https://api.github.com/repos/rusoto/rusoto/git/commits{/sha}","comments_url":"https://api.github.com/repos/rusoto/rusoto/comments{/number}","issue_comment_url":"https://api.github.com/repos/rusoto/rusoto/issues/comments{/number}","contents_url":"https://api.github.com/repos/rusoto/rusoto/contents/{+path}","compare_url":"https://api.github.com/repos/rusoto/rusoto/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rusoto/rusoto/merges","archive_url":"https://api.github.com/repos/rusoto/rusoto/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rusoto/rusoto/downloads","issues_url":"https://api.github.com/repos/rusoto/rusoto/issues{/number}","pulls_url":"https://api.github.com/repos/rusoto/rusoto/pulls{/number}","milestones_url":"https://api.github.com/repos/rusoto/rusoto/milestones{/number}","notifications_url":"https://api.github.com/repos/rusoto/rusoto/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rusoto/rusoto/labels{/name}","releases_url":"https://api.github.com/repos/rusoto/rusoto/releases{/id}","deployments_url":"https://api.github.com/repos/rusoto/rusoto/deployments","created_at":"2015-07-15T00:22:17Z","updated_at":"2016-04-10T15:16:55Z","pushed_at":"2016-04-13T00:33:08Z","git_url":"git://github.com/rusoto/rusoto.git","ssh_url":"git@github.com:rusoto/rusoto.git","clone_url":"https://github.com/rusoto/rusoto.git","svn_url":"https://github.com/rusoto/rusoto","homepage":"","size":9508,"stargazers_count":94,"watchers_count":94,"language":"Rust","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":18,"mirror_url":null,"open_issues_count":19,"forks":18,"open_issues":19,"watchers":94,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rusoto/rusoto/pulls/212"},"html":{"href":"https://github.com/rusoto/rusoto/pull/212"},"issue":{"href":"https://api.github.com/repos/rusoto/rusoto/issues/212"},"comments":{"href":"https://api.github.com/repos/rusoto/rusoto/issues/212/comments"},"review_comments":{"href":"https://api.github.com/repos/rusoto/rusoto/pulls/212/comments"},"review_comment":{"href":"https://api.github.com/repos/rusoto/rusoto/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rusoto/rusoto/pulls/212/commits"},"statuses":{"href":"https://api.github.com/repos/rusoto/rusoto/statuses/22b11d3493cce7ad78a386792320e8c1093bfaa4"}}}}