{"action":"created","comment":{"url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/comments/51866550","id":51866550,"diff_hunk":"@@ -78,13 +78,31 @@ NOTE: In this case there is only one `Source` in the application context so ther\n \n A module can have multiple input or output channels defined as `@Input` and `@Output` methods in an interface. Instead of just one channel named \"input\" or \"output\" you can add multiple `MessageChannel` methods annotated `@Input` or `@Output` and their names will be converted to external channel names on the broker. It is common to specify the channel names at runtime in order to have multiple modules communicate over a well known channel names.  Channel names can be specified as properties that consist of the channel names prefixed with `spring.cloud.stream.bindings` (e.g. `spring.cloud.stream.bindings.input` or `spring.cloud.stream.bindings.output`). These properties can be specified though environment variables, the application YAML file or the other mechanism supported by Spring Boot.\n \n-Channel names can also have a channel type as a colon-separated prefix, and the semantics of the external bus channel changes accordingly. For example, you can have two `MessageChannels` called \"output\" and \"foo\" in a module with `spring.cloud.stream.bindings.output=bar` and `spring.cloud.stream.bindings.foo=topic:foo`, and the result is 2 external channels called \"bar\" and \"topic:foo\".  The queue prefix for point to point semantics is also supported.  Note, that in a future release only topic (pub/sub) semantics will be supported.\n+Channel names can also have a channel type as a colon-separated prefix, and the semantics of the external bus channel changes accordingly. For example, you can have two `MessageChannels` called \"output\" and \"foo\" in a module with `spring.cloud.stream.bindings.output=bar` and `spring.cloud.stream.bindings.foo=baz`, and the result is 2 external channels called \"bar\" and \"baz\".\n \n ==== Inter-module communication\n \n While Spring Cloud Stream makes it easy for individual modules to connect to messaging systems, the typical scenario for Spring Cloud Stream is the creation of multi-module pipelines, where modules are sending data to each other. This can be achieved by correlating the input and output destinations of adjacent modules, as in the following example.\n \n-Supposing that the design calls for the `time-source` module to send data to the `log-sink` module, we will use a common destination named `foo` for both modules. `time-source` will set `spring.cloud.stream.bindings.output=foo` and `log-sink` will set `spring.cloud.stream.bindings.input=foo`. \n+Supposing that the design calls for the `time-source` module to send data to the `log-sink` module, we will use a common destination named `foo` for both modules. `time-source` will set `spring.cloud.stream.bindings.output=foo` and `log-sink` will set `spring.cloud.stream.bindings.input=foo`.","path":"spring-cloud-stream-docs/src/main/asciidoc/spring-cloud-stream-overview.adoc","position":21,"original_position":21,"commit_id":"6b53774b0242f200f4848a3c844d0bc79f4d14f1","original_commit_id":"6b53774b0242f200f4848a3c844d0bc79f4d14f1","user":{"login":"markfisher","id":140784,"avatar_url":"https://avatars.githubusercontent.com/u/140784?v=3","gravatar_id":"","url":"https://api.github.com/users/markfisher","html_url":"https://github.com/markfisher","followers_url":"https://api.github.com/users/markfisher/followers","following_url":"https://api.github.com/users/markfisher/following{/other_user}","gists_url":"https://api.github.com/users/markfisher/gists{/gist_id}","starred_url":"https://api.github.com/users/markfisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markfisher/subscriptions","organizations_url":"https://api.github.com/users/markfisher/orgs","repos_url":"https://api.github.com/users/markfisher/repos","events_url":"https://api.github.com/users/markfisher/events{/privacy}","received_events_url":"https://api.github.com/users/markfisher/received_events","type":"User","site_admin":false},"body":"+1, and it's probably a good idea to use `destination` (rather than the shortcut) in the discussion above as well (where the previous comments are in this PR).","created_at":"2016-02-04T12:35:28Z","updated_at":"2016-02-04T12:35:28Z","html_url":"https://github.com/spring-cloud/spring-cloud-stream/pull/310#discussion_r51866550","pull_request_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310","_links":{"self":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/comments/51866550"},"html":{"href":"https://github.com/spring-cloud/spring-cloud-stream/pull/310#discussion_r51866550"},"pull_request":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310"}}},"pull_request":{"url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310","id":58253596,"html_url":"https://github.com/spring-cloud/spring-cloud-stream/pull/310","diff_url":"https://github.com/spring-cloud/spring-cloud-stream/pull/310.diff","patch_url":"https://github.com/spring-cloud/spring-cloud-stream/pull/310.patch","issue_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues/310","number":310,"state":"open","locked":false,"title":"Doc updates for M4","user":{"login":"mbogoevici","id":159684,"avatar_url":"https://avatars.githubusercontent.com/u/159684?v=3","gravatar_id":"","url":"https://api.github.com/users/mbogoevici","html_url":"https://github.com/mbogoevici","followers_url":"https://api.github.com/users/mbogoevici/followers","following_url":"https://api.github.com/users/mbogoevici/following{/other_user}","gists_url":"https://api.github.com/users/mbogoevici/gists{/gist_id}","starred_url":"https://api.github.com/users/mbogoevici/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbogoevici/subscriptions","organizations_url":"https://api.github.com/users/mbogoevici/orgs","repos_url":"https://api.github.com/users/mbogoevici/repos","events_url":"https://api.github.com/users/mbogoevici/events{/privacy}","received_events_url":"https://api.github.com/users/mbogoevici/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-02-04T08:16:59Z","updated_at":"2016-02-04T12:35:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"56319ed96b7068b7c4ec6a46419a2036a41f56ff","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310/commits","review_comments_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310/comments","review_comment_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/comments{/number}","comments_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues/310/comments","statuses_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/statuses/6b53774b0242f200f4848a3c844d0bc79f4d14f1","head":{"label":"mbogoevici:docs","ref":"docs","sha":"6b53774b0242f200f4848a3c844d0bc79f4d14f1","user":{"login":"mbogoevici","id":159684,"avatar_url":"https://avatars.githubusercontent.com/u/159684?v=3","gravatar_id":"","url":"https://api.github.com/users/mbogoevici","html_url":"https://github.com/mbogoevici","followers_url":"https://api.github.com/users/mbogoevici/followers","following_url":"https://api.github.com/users/mbogoevici/following{/other_user}","gists_url":"https://api.github.com/users/mbogoevici/gists{/gist_id}","starred_url":"https://api.github.com/users/mbogoevici/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbogoevici/subscriptions","organizations_url":"https://api.github.com/users/mbogoevici/orgs","repos_url":"https://api.github.com/users/mbogoevici/repos","events_url":"https://api.github.com/users/mbogoevici/events{/privacy}","received_events_url":"https://api.github.com/users/mbogoevici/received_events","type":"User","site_admin":false},"repo":{"id":38768510,"name":"spring-cloud-stream","full_name":"mbogoevici/spring-cloud-stream","owner":{"login":"mbogoevici","id":159684,"avatar_url":"https://avatars.githubusercontent.com/u/159684?v=3","gravatar_id":"","url":"https://api.github.com/users/mbogoevici","html_url":"https://github.com/mbogoevici","followers_url":"https://api.github.com/users/mbogoevici/followers","following_url":"https://api.github.com/users/mbogoevici/following{/other_user}","gists_url":"https://api.github.com/users/mbogoevici/gists{/gist_id}","starred_url":"https://api.github.com/users/mbogoevici/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbogoevici/subscriptions","organizations_url":"https://api.github.com/users/mbogoevici/orgs","repos_url":"https://api.github.com/users/mbogoevici/repos","events_url":"https://api.github.com/users/mbogoevici/events{/privacy}","received_events_url":"https://api.github.com/users/mbogoevici/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mbogoevici/spring-cloud-stream","description":"Messaging Microservices with Spring Integration","fork":true,"url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream","forks_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/forks","keys_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/teams","hooks_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/hooks","issue_events_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/issues/events{/number}","events_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/events","assignees_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/assignees{/user}","branches_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/branches{/branch}","tags_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/tags","blobs_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/git/refs{/sha}","trees_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/statuses/{sha}","languages_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/languages","stargazers_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/stargazers","contributors_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/contributors","subscribers_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/subscribers","subscription_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/subscription","commits_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/commits{/sha}","git_commits_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/git/commits{/sha}","comments_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/comments{/number}","issue_comment_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/issues/comments{/number}","contents_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/contents/{+path}","compare_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/merges","archive_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/downloads","issues_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/issues{/number}","pulls_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/pulls{/number}","milestones_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/milestones{/number}","notifications_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/labels{/name}","releases_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/releases{/id}","deployments_url":"https://api.github.com/repos/mbogoevici/spring-cloud-stream/deployments","created_at":"2015-07-08T17:15:48Z","updated_at":"2016-01-13T21:40:39Z","pushed_at":"2016-02-04T08:16:32Z","git_url":"git://github.com/mbogoevici/spring-cloud-stream.git","ssh_url":"git@github.com:mbogoevici/spring-cloud-stream.git","clone_url":"https://github.com/mbogoevici/spring-cloud-stream.git","svn_url":"https://github.com/mbogoevici/spring-cloud-stream","homepage":null,"size":1696,"stargazers_count":0,"watchers_count":0,"language":"Java","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":"spring-cloud:master","ref":"master","sha":"9c381d3b26b514e764165fb3885097fb7167a596","user":{"login":"spring-cloud","id":7815877,"avatar_url":"https://avatars.githubusercontent.com/u/7815877?v=3","gravatar_id":"","url":"https://api.github.com/users/spring-cloud","html_url":"https://github.com/spring-cloud","followers_url":"https://api.github.com/users/spring-cloud/followers","following_url":"https://api.github.com/users/spring-cloud/following{/other_user}","gists_url":"https://api.github.com/users/spring-cloud/gists{/gist_id}","starred_url":"https://api.github.com/users/spring-cloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spring-cloud/subscriptions","organizations_url":"https://api.github.com/users/spring-cloud/orgs","repos_url":"https://api.github.com/users/spring-cloud/repos","events_url":"https://api.github.com/users/spring-cloud/events{/privacy}","received_events_url":"https://api.github.com/users/spring-cloud/received_events","type":"Organization","site_admin":false},"repo":{"id":38764029,"name":"spring-cloud-stream","full_name":"spring-cloud/spring-cloud-stream","owner":{"login":"spring-cloud","id":7815877,"avatar_url":"https://avatars.githubusercontent.com/u/7815877?v=3","gravatar_id":"","url":"https://api.github.com/users/spring-cloud","html_url":"https://github.com/spring-cloud","followers_url":"https://api.github.com/users/spring-cloud/followers","following_url":"https://api.github.com/users/spring-cloud/following{/other_user}","gists_url":"https://api.github.com/users/spring-cloud/gists{/gist_id}","starred_url":"https://api.github.com/users/spring-cloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spring-cloud/subscriptions","organizations_url":"https://api.github.com/users/spring-cloud/orgs","repos_url":"https://api.github.com/users/spring-cloud/repos","events_url":"https://api.github.com/users/spring-cloud/events{/privacy}","received_events_url":"https://api.github.com/users/spring-cloud/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/spring-cloud/spring-cloud-stream","description":"Messaging Microservices with Spring Integration","fork":false,"url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream","forks_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/forks","keys_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/keys{/key_id}","collaborators_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/teams","hooks_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/hooks","issue_events_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues/events{/number}","events_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/events","assignees_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/assignees{/user}","branches_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/branches{/branch}","tags_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/tags","blobs_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/git/refs{/sha}","trees_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/git/trees{/sha}","statuses_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/statuses/{sha}","languages_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/languages","stargazers_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/stargazers","contributors_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/contributors","subscribers_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/subscribers","subscription_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/subscription","commits_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/commits{/sha}","git_commits_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/git/commits{/sha}","comments_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/comments{/number}","issue_comment_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues/comments{/number}","contents_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/contents/{+path}","compare_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/compare/{base}...{head}","merges_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/merges","archive_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/downloads","issues_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues{/number}","pulls_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls{/number}","milestones_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/milestones{/number}","notifications_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/labels{/name}","releases_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/releases{/id}","deployments_url":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/deployments","created_at":"2015-07-08T15:51:38Z","updated_at":"2016-01-28T02:37:46Z","pushed_at":"2016-02-04T08:17:00Z","git_url":"git://github.com/spring-cloud/spring-cloud-stream.git","ssh_url":"git@github.com:spring-cloud/spring-cloud-stream.git","clone_url":"https://github.com/spring-cloud/spring-cloud-stream.git","svn_url":"https://github.com/spring-cloud/spring-cloud-stream","homepage":"http://cloud.spring.io/spring-cloud-stream/","size":2880,"stargazers_count":31,"watchers_count":31,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":32,"mirror_url":null,"open_issues_count":58,"forks":32,"open_issues":58,"watchers":31,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310"},"html":{"href":"https://github.com/spring-cloud/spring-cloud-stream/pull/310"},"issue":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues/310"},"comments":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/issues/310/comments"},"review_comments":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310/comments"},"review_comment":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/pulls/310/commits"},"statuses":{"href":"https://api.github.com/repos/spring-cloud/spring-cloud-stream/statuses/6b53774b0242f200f4848a3c844d0bc79f4d14f1"}}}}