{"action":"created","comment":{"url":"https://api.github.com/repos/financialforcedev/orizuru/pulls/comments/223008855","pull_request_review_id":162030478,"id":223008855,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMzAwODg1NQ==","diff_hunk":"@@ -60,10 +48,19 @@ export function create(server: Server, routeConfiguration: { [s: string]: Type }\n \t\t\tschema\n \t\t};\n \n-\t\treturn Promise.resolve(message)\n-\t\t\t.then(server.getPublisher().publish.bind(server.getPublisher()))\n-\t\t\t.then(() => responseWriter(server)(undefined, request, response))\n-\t\t\t.catch((error) => responseWriter(server)(error, request, response));\n+\t\ttry {\n+\n+\t\t\tif (synchronous) {\n+\t\t\t\tserver.getPublisher().validate(schema, request.body);","path":"src/index/server/route.ts","position":53,"original_position":53,"commit_id":"c5ebd07a6a8e2bb0b78822f7ae9f3fde6f14413e","original_commit_id":"f25d69c659b1e643d73f34e1194cd2941a02b97f","user":{"login":"sfryffdc","id":1456707,"node_id":"MDQ6VXNlcjE0NTY3MDc=","avatar_url":"https://avatars3.githubusercontent.com/u/1456707?v=4","gravatar_id":"","url":"https://api.github.com/users/sfryffdc","html_url":"https://github.com/sfryffdc","followers_url":"https://api.github.com/users/sfryffdc/followers","following_url":"https://api.github.com/users/sfryffdc/following{/other_user}","gists_url":"https://api.github.com/users/sfryffdc/gists{/gist_id}","starred_url":"https://api.github.com/users/sfryffdc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sfryffdc/subscriptions","organizations_url":"https://api.github.com/users/sfryffdc/orgs","repos_url":"https://api.github.com/users/sfryffdc/repos","events_url":"https://api.github.com/users/sfryffdc/events{/privacy}","received_events_url":"https://api.github.com/users/sfryffdc/received_events","type":"User","site_admin":false},"body":"Should we separate out the validation from the publisher? Seems a bit weird for the publisher to validate?","created_at":"2018-10-05T13:38:18Z","updated_at":"2018-10-05T13:58:57Z","html_url":"https://github.com/financialforcedev/orizuru/pull/39#discussion_r223008855","pull_request_url":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/financialforcedev/orizuru/pulls/comments/223008855"},"html":{"href":"https://github.com/financialforcedev/orizuru/pull/39#discussion_r223008855"},"pull_request":{"href":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39"}}},"pull_request":{"url":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39","id":220667779,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIwNjY3Nzc5","html_url":"https://github.com/financialforcedev/orizuru/pull/39","diff_url":"https://github.com/financialforcedev/orizuru/pull/39.diff","patch_url":"https://github.com/financialforcedev/orizuru/pull/39.patch","issue_url":"https://api.github.com/repos/financialforcedev/orizuru/issues/39","number":39,"state":"open","locked":false,"title":"Feature/rework with addition of system tests","user":{"login":"mwoodffdc","id":9592432,"node_id":"MDQ6VXNlcjk1OTI0MzI=","avatar_url":"https://avatars1.githubusercontent.com/u/9592432?v=4","gravatar_id":"","url":"https://api.github.com/users/mwoodffdc","html_url":"https://github.com/mwoodffdc","followers_url":"https://api.github.com/users/mwoodffdc/followers","following_url":"https://api.github.com/users/mwoodffdc/following{/other_user}","gists_url":"https://api.github.com/users/mwoodffdc/gists{/gist_id}","starred_url":"https://api.github.com/users/mwoodffdc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwoodffdc/subscriptions","organizations_url":"https://api.github.com/users/mwoodffdc/orgs","repos_url":"https://api.github.com/users/mwoodffdc/repos","events_url":"https://api.github.com/users/mwoodffdc/events{/privacy}","received_events_url":"https://api.github.com/users/mwoodffdc/received_events","type":"User","site_admin":false},"body":"Addition of a suite of system tests raised a number of issues with the existing framework that have been addressed in this PR.\r\n\r\nThis release is intended to be used in combination with the `\"@financialforcedev/orizuru-transport-rabbitmq@next` transport layer.\r\n\r\n## 9.0.0-0 PREMAJOR\r\n\r\n- The `addRoute` method can now add synchronous APIs.\r\n\t- Set the `synchronous` property to `true` in the route options to do this.\r\n\t- All incoming messages are still validated against the Apache Avro schema but are not published to a message queue.\r\n\t- Synchronous request logic should be added to the `responseWriter` property.\r\n- The routing mechanism for Orizuru has been updated so that each endpoint now uses a different express router.\r\n- Orizuru now expects a class for the transport layer.\r\n\t- Each server, publisher and handler should have a different transport instance.\r\n\t- The configuration for the transport can be provided in the constructor.\r\n\t- Updated ITransport interface.\r\n\t- Removed Orizuru.Transport.IConnect interface.\r\n- Addition of helper methods for `listen`, `close`, `set` and `use` to the Orizuru `Server`.\r\n\t- By default, `close` also closes the transport layer.\r\n\t- By default, `listen` starts the server listening for connections specified in the `Options`.\r\n- All Orizuru `Handler` and `Publisher` instances must now be initialised by calling the `init()` function. This initialises the connection.\r\n\r\n- Events have now been converted to use symbols.\r\n- Add system tests to test core functionality.\r\n\t- Addition of RabbitMQ docker image using the same version as Travis CI.\r\n\t- System test coverage is now included in Travis builds.\r\n- Add nyc.opts file to clean up the package.json.\r\n","created_at":"2018-10-05T11:19:09Z","updated_at":"2018-10-05T13:58:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9328fdec7558d0691c8fd22f46dce94b71ba17bf","assignee":{"login":"mwoodffdc","id":9592432,"node_id":"MDQ6VXNlcjk1OTI0MzI=","avatar_url":"https://avatars1.githubusercontent.com/u/9592432?v=4","gravatar_id":"","url":"https://api.github.com/users/mwoodffdc","html_url":"https://github.com/mwoodffdc","followers_url":"https://api.github.com/users/mwoodffdc/followers","following_url":"https://api.github.com/users/mwoodffdc/following{/other_user}","gists_url":"https://api.github.com/users/mwoodffdc/gists{/gist_id}","starred_url":"https://api.github.com/users/mwoodffdc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwoodffdc/subscriptions","organizations_url":"https://api.github.com/users/mwoodffdc/orgs","repos_url":"https://api.github.com/users/mwoodffdc/repos","events_url":"https://api.github.com/users/mwoodffdc/events{/privacy}","received_events_url":"https://api.github.com/users/mwoodffdc/received_events","type":"User","site_admin":false},"assignees":[{"login":"mwoodffdc","id":9592432,"node_id":"MDQ6VXNlcjk1OTI0MzI=","avatar_url":"https://avatars1.githubusercontent.com/u/9592432?v=4","gravatar_id":"","url":"https://api.github.com/users/mwoodffdc","html_url":"https://github.com/mwoodffdc","followers_url":"https://api.github.com/users/mwoodffdc/followers","following_url":"https://api.github.com/users/mwoodffdc/following{/other_user}","gists_url":"https://api.github.com/users/mwoodffdc/gists{/gist_id}","starred_url":"https://api.github.com/users/mwoodffdc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mwoodffdc/subscriptions","organizations_url":"https://api.github.com/users/mwoodffdc/orgs","repos_url":"https://api.github.com/users/mwoodffdc/repos","events_url":"https://api.github.com/users/mwoodffdc/events{/privacy}","received_events_url":"https://api.github.com/users/mwoodffdc/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"pwrightffdc","id":4903996,"node_id":"MDQ6VXNlcjQ5MDM5OTY=","avatar_url":"https://avatars3.githubusercontent.com/u/4903996?v=4","gravatar_id":"","url":"https://api.github.com/users/pwrightffdc","html_url":"https://github.com/pwrightffdc","followers_url":"https://api.github.com/users/pwrightffdc/followers","following_url":"https://api.github.com/users/pwrightffdc/following{/other_user}","gists_url":"https://api.github.com/users/pwrightffdc/gists{/gist_id}","starred_url":"https://api.github.com/users/pwrightffdc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pwrightffdc/subscriptions","organizations_url":"https://api.github.com/users/pwrightffdc/orgs","repos_url":"https://api.github.com/users/pwrightffdc/repos","events_url":"https://api.github.com/users/pwrightffdc/events{/privacy}","received_events_url":"https://api.github.com/users/pwrightffdc/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39/commits","review_comments_url":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39/comments","review_comment_url":"https://api.github.com/repos/financialforcedev/orizuru/pulls/comments{/number}","comments_url":"https://api.github.com/repos/financialforcedev/orizuru/issues/39/comments","statuses_url":"https://api.github.com/repos/financialforcedev/orizuru/statuses/c5ebd07a6a8e2bb0b78822f7ae9f3fde6f14413e","head":{"label":"financialforcedev:feature/rework-with-addition-of-system-tests","ref":"feature/rework-with-addition-of-system-tests","sha":"c5ebd07a6a8e2bb0b78822f7ae9f3fde6f14413e","user":{"login":"financialforcedev","id":2260530,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIyNjA1MzA=","avatar_url":"https://avatars0.githubusercontent.com/u/2260530?v=4","gravatar_id":"","url":"https://api.github.com/users/financialforcedev","html_url":"https://github.com/financialforcedev","followers_url":"https://api.github.com/users/financialforcedev/followers","following_url":"https://api.github.com/users/financialforcedev/following{/other_user}","gists_url":"https://api.github.com/users/financialforcedev/gists{/gist_id}","starred_url":"https://api.github.com/users/financialforcedev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/financialforcedev/subscriptions","organizations_url":"https://api.github.com/users/financialforcedev/orgs","repos_url":"https://api.github.com/users/financialforcedev/repos","events_url":"https://api.github.com/users/financialforcedev/events{/privacy}","received_events_url":"https://api.github.com/users/financialforcedev/received_events","type":"Organization","site_admin":false},"repo":{"id":107114430,"node_id":"MDEwOlJlcG9zaXRvcnkxMDcxMTQ0MzA=","name":"orizuru","full_name":"financialforcedev/orizuru","private":false,"owner":{"login":"financialforcedev","id":2260530,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIyNjA1MzA=","avatar_url":"https://avatars0.githubusercontent.com/u/2260530?v=4","gravatar_id":"","url":"https://api.github.com/users/financialforcedev","html_url":"https://github.com/financialforcedev","followers_url":"https://api.github.com/users/financialforcedev/followers","following_url":"https://api.github.com/users/financialforcedev/following{/other_user}","gists_url":"https://api.github.com/users/financialforcedev/gists{/gist_id}","starred_url":"https://api.github.com/users/financialforcedev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/financialforcedev/subscriptions","organizations_url":"https://api.github.com/users/financialforcedev/orgs","repos_url":"https://api.github.com/users/financialforcedev/repos","events_url":"https://api.github.com/users/financialforcedev/events{/privacy}","received_events_url":"https://api.github.com/users/financialforcedev/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/financialforcedev/orizuru","description":"Streamlined communication between Heroku dynos / other worker processes","fork":false,"url":"https://api.github.com/repos/financialforcedev/orizuru","forks_url":"https://api.github.com/repos/financialforcedev/orizuru/forks","keys_url":"https://api.github.com/repos/financialforcedev/orizuru/keys{/key_id}","collaborators_url":"https://api.github.com/repos/financialforcedev/orizuru/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/financialforcedev/orizuru/teams","hooks_url":"https://api.github.com/repos/financialforcedev/orizuru/hooks","issue_events_url":"https://api.github.com/repos/financialforcedev/orizuru/issues/events{/number}","events_url":"https://api.github.com/repos/financialforcedev/orizuru/events","assignees_url":"https://api.github.com/repos/financialforcedev/orizuru/assignees{/user}","branches_url":"https://api.github.com/repos/financialforcedev/orizuru/branches{/branch}","tags_url":"https://api.github.com/repos/financialforcedev/orizuru/tags","blobs_url":"https://api.github.com/repos/financialforcedev/orizuru/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/financialforcedev/orizuru/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/financialforcedev/orizuru/git/refs{/sha}","trees_url":"https://api.github.com/repos/financialforcedev/orizuru/git/trees{/sha}","statuses_url":"https://api.github.com/repos/financialforcedev/orizuru/statuses/{sha}","languages_url":"https://api.github.com/repos/financialforcedev/orizuru/languages","stargazers_url":"https://api.github.com/repos/financialforcedev/orizuru/stargazers","contributors_url":"https://api.github.com/repos/financialforcedev/orizuru/contributors","subscribers_url":"https://api.github.com/repos/financialforcedev/orizuru/subscribers","subscription_url":"https://api.github.com/repos/financialforcedev/orizuru/subscription","commits_url":"https://api.github.com/repos/financialforcedev/orizuru/commits{/sha}","git_commits_url":"https://api.github.com/repos/financialforcedev/orizuru/git/commits{/sha}","comments_url":"https://api.github.com/repos/financialforcedev/orizuru/comments{/number}","issue_comment_url":"https://api.github.com/repos/financialforcedev/orizuru/issues/comments{/number}","contents_url":"https://api.github.com/repos/financialforcedev/orizuru/contents/{+path}","compare_url":"https://api.github.com/repos/financialforcedev/orizuru/compare/{base}...{head}","merges_url":"https://api.github.com/repos/financialforcedev/orizuru/merges","archive_url":"https://api.github.com/repos/financialforcedev/orizuru/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/financialforcedev/orizuru/downloads","issues_url":"https://api.github.com/repos/financialforcedev/orizuru/issues{/number}","pulls_url":"https://api.github.com/repos/financialforcedev/orizuru/pulls{/number}","milestones_url":"https://api.github.com/repos/financialforcedev/orizuru/milestones{/number}","notifications_url":"https://api.github.com/repos/financialforcedev/orizuru/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/financialforcedev/orizuru/labels{/name}","releases_url":"https://api.github.com/repos/financialforcedev/orizuru/releases{/id}","deployments_url":"https://api.github.com/repos/financialforcedev/orizuru/deployments","created_at":"2017-10-16T10:44:17Z","updated_at":"2018-09-28T09:12:43Z","pushed_at":"2018-10-05T13:51:04Z","git_url":"git://github.com/financialforcedev/orizuru.git","ssh_url":"git@github.com:financialforcedev/orizuru.git","clone_url":"https://github.com/financialforcedev/orizuru.git","svn_url":"https://github.com/financialforcedev/orizuru","homepage":null,"size":1677,"stargazers_count":6,"watchers_count":6,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause","node_id":"MDc6TGljZW5zZTU="},"forks":0,"open_issues":1,"watchers":6,"default_branch":"master"}},"base":{"label":"financialforcedev:master","ref":"master","sha":"898d22cea9224b8386f9e16409340281eb552999","user":{"login":"financialforcedev","id":2260530,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIyNjA1MzA=","avatar_url":"https://avatars0.githubusercontent.com/u/2260530?v=4","gravatar_id":"","url":"https://api.github.com/users/financialforcedev","html_url":"https://github.com/financialforcedev","followers_url":"https://api.github.com/users/financialforcedev/followers","following_url":"https://api.github.com/users/financialforcedev/following{/other_user}","gists_url":"https://api.github.com/users/financialforcedev/gists{/gist_id}","starred_url":"https://api.github.com/users/financialforcedev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/financialforcedev/subscriptions","organizations_url":"https://api.github.com/users/financialforcedev/orgs","repos_url":"https://api.github.com/users/financialforcedev/repos","events_url":"https://api.github.com/users/financialforcedev/events{/privacy}","received_events_url":"https://api.github.com/users/financialforcedev/received_events","type":"Organization","site_admin":false},"repo":{"id":107114430,"node_id":"MDEwOlJlcG9zaXRvcnkxMDcxMTQ0MzA=","name":"orizuru","full_name":"financialforcedev/orizuru","private":false,"owner":{"login":"financialforcedev","id":2260530,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIyNjA1MzA=","avatar_url":"https://avatars0.githubusercontent.com/u/2260530?v=4","gravatar_id":"","url":"https://api.github.com/users/financialforcedev","html_url":"https://github.com/financialforcedev","followers_url":"https://api.github.com/users/financialforcedev/followers","following_url":"https://api.github.com/users/financialforcedev/following{/other_user}","gists_url":"https://api.github.com/users/financialforcedev/gists{/gist_id}","starred_url":"https://api.github.com/users/financialforcedev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/financialforcedev/subscriptions","organizations_url":"https://api.github.com/users/financialforcedev/orgs","repos_url":"https://api.github.com/users/financialforcedev/repos","events_url":"https://api.github.com/users/financialforcedev/events{/privacy}","received_events_url":"https://api.github.com/users/financialforcedev/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/financialforcedev/orizuru","description":"Streamlined communication between Heroku dynos / other worker processes","fork":false,"url":"https://api.github.com/repos/financialforcedev/orizuru","forks_url":"https://api.github.com/repos/financialforcedev/orizuru/forks","keys_url":"https://api.github.com/repos/financialforcedev/orizuru/keys{/key_id}","collaborators_url":"https://api.github.com/repos/financialforcedev/orizuru/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/financialforcedev/orizuru/teams","hooks_url":"https://api.github.com/repos/financialforcedev/orizuru/hooks","issue_events_url":"https://api.github.com/repos/financialforcedev/orizuru/issues/events{/number}","events_url":"https://api.github.com/repos/financialforcedev/orizuru/events","assignees_url":"https://api.github.com/repos/financialforcedev/orizuru/assignees{/user}","branches_url":"https://api.github.com/repos/financialforcedev/orizuru/branches{/branch}","tags_url":"https://api.github.com/repos/financialforcedev/orizuru/tags","blobs_url":"https://api.github.com/repos/financialforcedev/orizuru/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/financialforcedev/orizuru/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/financialforcedev/orizuru/git/refs{/sha}","trees_url":"https://api.github.com/repos/financialforcedev/orizuru/git/trees{/sha}","statuses_url":"https://api.github.com/repos/financialforcedev/orizuru/statuses/{sha}","languages_url":"https://api.github.com/repos/financialforcedev/orizuru/languages","stargazers_url":"https://api.github.com/repos/financialforcedev/orizuru/stargazers","contributors_url":"https://api.github.com/repos/financialforcedev/orizuru/contributors","subscribers_url":"https://api.github.com/repos/financialforcedev/orizuru/subscribers","subscription_url":"https://api.github.com/repos/financialforcedev/orizuru/subscription","commits_url":"https://api.github.com/repos/financialforcedev/orizuru/commits{/sha}","git_commits_url":"https://api.github.com/repos/financialforcedev/orizuru/git/commits{/sha}","comments_url":"https://api.github.com/repos/financialforcedev/orizuru/comments{/number}","issue_comment_url":"https://api.github.com/repos/financialforcedev/orizuru/issues/comments{/number}","contents_url":"https://api.github.com/repos/financialforcedev/orizuru/contents/{+path}","compare_url":"https://api.github.com/repos/financialforcedev/orizuru/compare/{base}...{head}","merges_url":"https://api.github.com/repos/financialforcedev/orizuru/merges","archive_url":"https://api.github.com/repos/financialforcedev/orizuru/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/financialforcedev/orizuru/downloads","issues_url":"https://api.github.com/repos/financialforcedev/orizuru/issues{/number}","pulls_url":"https://api.github.com/repos/financialforcedev/orizuru/pulls{/number}","milestones_url":"https://api.github.com/repos/financialforcedev/orizuru/milestones{/number}","notifications_url":"https://api.github.com/repos/financialforcedev/orizuru/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/financialforcedev/orizuru/labels{/name}","releases_url":"https://api.github.com/repos/financialforcedev/orizuru/releases{/id}","deployments_url":"https://api.github.com/repos/financialforcedev/orizuru/deployments","created_at":"2017-10-16T10:44:17Z","updated_at":"2018-09-28T09:12:43Z","pushed_at":"2018-10-05T13:51:04Z","git_url":"git://github.com/financialforcedev/orizuru.git","ssh_url":"git@github.com:financialforcedev/orizuru.git","clone_url":"https://github.com/financialforcedev/orizuru.git","svn_url":"https://github.com/financialforcedev/orizuru","homepage":null,"size":1677,"stargazers_count":6,"watchers_count":6,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause","node_id":"MDc6TGljZW5zZTU="},"forks":0,"open_issues":1,"watchers":6,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39"},"html":{"href":"https://github.com/financialforcedev/orizuru/pull/39"},"issue":{"href":"https://api.github.com/repos/financialforcedev/orizuru/issues/39"},"comments":{"href":"https://api.github.com/repos/financialforcedev/orizuru/issues/39/comments"},"review_comments":{"href":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39/comments"},"review_comment":{"href":"https://api.github.com/repos/financialforcedev/orizuru/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/financialforcedev/orizuru/pulls/39/commits"},"statuses":{"href":"https://api.github.com/repos/financialforcedev/orizuru/statuses/c5ebd07a6a8e2bb0b78822f7ae9f3fde6f14413e"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"sfryffdc"}}