diff --git a/pom.xml b/pom.xml
index c97754e9e..8ec204690 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,6 +23,7 @@
spring-cloud-stream-binder-rabbitspring-cloud-starter-stream-rabbitspring-cloud-stream-binder-rabbit-test-support
+ spring-cloud-stream-binder-rabbit-docs
@@ -34,6 +35,30 @@
true
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+ 1.7
+
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ 2.17
+
+
+ com.puppycrawl.tools
+ checkstyle
+ 6.17
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+ true
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/pom.xml b/spring-cloud-stream-binder-rabbit-docs/pom.xml
new file mode 100644
index 000000000..aaee72507
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/pom.xml
@@ -0,0 +1,337 @@
+
+
+ 4.0.0
+
+
+ org.springframework.cloud
+ spring-cloud-stream-binder-rabbit-parent
+ 1.1.0.BUILD-SNAPSHOT
+
+
+ spring-cloud-stream-binder-rabbit-docs
+ spring-cloud-stream-binder-rabbit-docs
+ Spring Cloud Stream Rabbit Binder Docs
+
+ ${basedir}/..
+
+
+
+ org.springframework.cloud
+ spring-cloud-stream-binder-rabbit
+ 1.1.0.BUILD-SNAPSHOT
+
+
+
+
+ full
+
+
+
+ org.codehaus.mojo
+ xml-maven-plugin
+ 1.0
+
+
+
+ transform
+
+
+
+
+
+
+ ${project.build.directory}/external-resources
+ src/main/xslt/dependencyVersions.xsl
+
+
+ .adoc
+
+
+ ${project.build.directory}/generated-resources
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+ attach-javadocs
+
+ jar
+
+ prepare-package
+
+ true
+
+ ${project.groupId}:*
+
+ false
+ true
+ ${basedir}/src/main/javadoc/spring-javadoc.css
+
+ http://docs.spring.io/spring-framework/docs/${spring.version}/javadoc-api/
+ http://docs.spring.io/spring-shell/docs/current/api/
+
+
+
+
+
+
+ org.asciidoctor
+ asciidoctor-maven-plugin
+ 1.5.0
+
+
+ generate-docbook
+ generate-resources
+
+ process-asciidoc
+
+
+ index.adoc
+ docbook5
+ book
+
+ true
+ ${project.version}
+ ${project.version}
+ ${github-tag}
+
+
+
+
+
+
+ com.agilejava.docbkx
+ docbkx-maven-plugin
+ 2.0.15
+
+ ${basedir}/target/generated-docs
+ index.xml
+ true
+ false
+ ${basedir}/src/main/docbook/xsl/pdf.xsl
+ 1
+ 1
+ ${basedir}/src/main/docbook/xsl/xslthl-config.xml
+
+
+
+ net.sf.xslthl
+ xslthl
+ 2.1.0
+
+
+ net.sf.docbook
+ docbook-xml
+ 5.0-all
+ resources
+ zip
+ runtime
+
+
+
+
+ html-single
+
+ generate-html
+
+ generate-resources
+
+ ${basedir}/src/main/docbook/xsl/html-singlepage.xsl
+ ${basedir}/target/docbook/htmlsingle
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ html
+
+ generate-html
+
+ generate-resources
+
+ ${basedir}/src/main/docbook/xsl/html-multipage.xsl
+ ${basedir}/target/docbook/html
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ pdf
+
+ generate-pdf
+
+ generate-resources
+
+ ${basedir}/src/main/docbook/xsl/pdf.xsl
+ ${basedir}/target/docbook/pdf
+
+
+
+
+
+
+
+
+
+
+
+ epub
+
+ generate-epub3
+
+ generate-resources
+
+ ${basedir}/src/main/docbook/xsl/epub.xsl
+ ${basedir}/target/docbook/epub
+
+
+
+
+
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+
+
+ ant-contrib
+ ant-contrib
+ 1.0b3
+
+
+ ant
+ ant
+
+
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+ org.tigris.antelope
+ antelopetasks
+ 3.2.10
+
+
+
+
+ package-and-attach-docs-zip
+ package
+
+ run
+
+
+
+
+
+
+
+
+
+
+
+ setup-maven-properties
+ validate
+
+ run
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ attach-zip
+
+ attach-artifact
+
+
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}.zip
+ zip;zip.type=docs;zip.deployed=false
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/.gitignore b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/.gitignore
new file mode 100644
index 000000000..bbc341117
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/.gitignore
@@ -0,0 +1,2 @@
+*.html
+*.css
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/Guardfile b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/Guardfile
new file mode 100644
index 000000000..bdd4d7298
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/Guardfile
@@ -0,0 +1,20 @@
+require 'asciidoctor'
+require 'erb'
+
+guard 'shell' do
+ watch(/.*\.adoc$/) {|m|
+ Asciidoctor.render_file('index.adoc', \
+ :in_place => true, \
+ :safe => Asciidoctor::SafeMode::UNSAFE, \
+ :attributes=> { \
+ 'source-highlighter' => 'prettify', \
+ 'icons' => 'font', \
+ 'linkcss'=> 'true', \
+ 'copycss' => 'true', \
+ 'doctype' => 'book'})
+ }
+end
+
+guard 'livereload' do
+ watch(%r{^.+\.(css|js|html)$})
+end
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/appendix.adoc b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/appendix.adoc
new file mode 100644
index 000000000..70b828fdd
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/appendix.adoc
@@ -0,0 +1,5 @@
+[[appendix]]
+= Appendices
+
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/building.adoc b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/building.adoc
new file mode 100644
index 000000000..9ad502876
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/building.adoc
@@ -0,0 +1,78 @@
+[[building]]
+== Building
+
+:jdkversion: 1.7
+
+=== Basic Compile and Test
+
+To build the source you will need to install JDK {jdkversion}.
+
+The build uses the Maven wrapper so you don't have to install a specific
+version of Maven. To enable the tests, you should have Kafka server 0.9 or above running
+before building. See below for more information on running the servers.
+
+The main build command is
+
+----
+$ ./mvnw clean install
+----
+
+You can also add '-DskipTests' if you like, to avoid running the tests.
+
+NOTE: You can also install Maven (>=3.3.3) yourself and run the `mvn` command
+in place of `./mvnw` in the examples below. If you do that you also
+might need to add `-P spring` if your local Maven settings do not
+contain repository declarations for spring pre-release artifacts.
+
+NOTE: Be aware that you might need to increase the amount of memory
+available to Maven by setting a `MAVEN_OPTS` environment variable with
+a value like `-Xmx512m -XX:MaxPermSize=128m`. We try to cover this in
+the `.mvn` configuration, so if you find you have to do it to make a
+build succeed, please raise a ticket to get the settings added to
+source control.
+
+
+The projects that require middleware generally include a
+`docker-compose.yml`, so consider using
+http://compose.docker.io/[Docker Compose] to run the middeware servers
+in Docker containers.
+
+=== Documentation
+
+There is a "full" profile that will generate documentation.
+
+=== Working with the code
+If you don't have an IDE preference we would recommend that you use
+http://www.springsource.com/developer/sts[Spring Tools Suite] or
+http://eclipse.org[Eclipse] when working with the code. We use the
+http://eclipse.org/m2e/[m2eclipe] eclipse plugin for maven support. Other IDEs and tools
+should also work without issue.
+
+==== Importing into eclipse with m2eclipse
+We recommend the http://eclipse.org/m2e/[m2eclipe] eclipse plugin when working with
+eclipse. If you don't already have m2eclipse installed it is available from the "eclipse
+marketplace".
+
+Unfortunately m2e does not yet support Maven 3.3, so once the projects
+are imported into Eclipse you will also need to tell m2eclipse to use
+the `.settings.xml` file for the projects. If you do not do this you
+may see many different errors related to the POMs in the
+projects. Open your Eclipse preferences, expand the Maven
+preferences, and select User Settings. In the User Settings field
+click Browse and navigate to the Spring Cloud project you imported
+selecting the `.settings.xml` file in that project. Click Apply and
+then OK to save the preference changes.
+
+NOTE: Alternatively you can copy the repository settings from https://github.com/spring-cloud/spring-cloud-build/blob/master/.settings.xml[`.settings.xml`] into your own `~/.m2/settings.xml`.
+
+==== Importing into eclipse without m2eclipse
+If you prefer not to use m2eclipse you can generate eclipse project metadata using the
+following command:
+
+[indent=0]
+----
+ $ ./mvnw eclipse:eclipse
+----
+
+The generated eclipse projects can be imported by selecting `import existing projects`
+from the `file` menu.
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/contributing.adoc b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/contributing.adoc
new file mode 100644
index 000000000..14505d112
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/contributing.adoc
@@ -0,0 +1,42 @@
+[[contributing]
+== Contributing
+
+Spring Cloud is released under the non-restrictive Apache 2.0 license,
+and follows a very standard Github development process, using Github
+tracker for issues and merging pull requests into master. If you want
+to contribute even something trivial please do not hesitate, but
+follow the guidelines below.
+
+=== Sign the Contributor License Agreement
+Before we accept a non-trivial patch or pull request we will need you to sign the
+https://support.springsource.com/spring_committer_signup[contributor's agreement].
+Signing the contributor's agreement does not grant anyone commit rights to the main
+repository, but it does mean that we can accept your contributions, and you will get an
+author credit if we do. Active contributors might be asked to join the core team, and
+given the ability to merge pull requests.
+
+=== Code Conventions and Housekeeping
+None of these is essential for a pull request, but they will all help. They can also be
+added after the original pull request but before a merge.
+
+* Use the Spring Framework code format conventions. If you use Eclipse
+ you can import formatter settings using the
+ `eclipse-code-formatter.xml` file from the
+ https://github.com/spring-cloud/build/tree/master/eclipse-coding-conventions.xml[Spring
+ Cloud Build] project. If using IntelliJ, you can use the
+ http://plugins.jetbrains.com/plugin/6546[Eclipse Code Formatter
+ Plugin] to import the same file.
+* Make sure all new `.java` files to have a simple Javadoc class comment with at least an
+ `@author` tag identifying you, and preferably at least a paragraph on what the class is
+ for.
+* Add the ASF license header comment to all new `.java` files (copy from existing files
+ in the project)
+* Add yourself as an `@author` to the .java files that you modify substantially (more
+ than cosmetic changes).
+* Add some Javadocs and, if you change the namespace, some XSD doc elements.
+* A few unit tests would help a lot as well -- someone has to do it.
+* If no-one else is using your branch, please rebase it against the current master (or
+ other target branch in the main project).
+* When writing a commit message please follow http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html[these conventions],
+ if you are fixing an existing issue please add `Fixes gh-XXXX` at the end of the commit
+ message (where XXXX is the issue number).
\ No newline at end of file
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/images/rabbit-binder.png b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/images/rabbit-binder.png
new file mode 100755
index 000000000..aabf698b3
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/images/rabbit-binder.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/index-docinfo.xml b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/index-docinfo.xml
new file mode 100644
index 000000000..0db87abde
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/index-docinfo.xml
@@ -0,0 +1,14 @@
+Spring Cloud Stream Rabbit Binder
+{spring-cloud-stream-binder-Rabbit-version}
+
+ 2013-2016
+ Pivotal Software, Inc.
+
+
+
+ Copies of this document may be made for your own use and for distribution to
+ others, provided that you do not charge any fee for such copies and further
+ provided that each copy contains this Copyright Notice, whether distributed in
+ print or electronically.
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/index.adoc b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/index.adoc
new file mode 100644
index 000000000..e12a6ae42
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/index.adoc
@@ -0,0 +1,33 @@
+[[spring-cloud-stream-binder-rabbit-reference]]
+= Spring Cloud Stream rabbit Binder Reference Guide
+Sabby Anandan, Marius Bogoevici, Eric Bottard, Mark Fisher, Ilayaperumal Gopinathan, Gunnar Hillert, Mark Pollack, Patrick Peralta, Glenn Renfro, Thomas Risberg, Dave Syer, David Turanski, Janne Valkealahti, Benjamin Klein
+:doctype: book
+:toc:
+:toclevels: 4
+:source-highlighter: prettify
+:numbered:
+:icons: font
+:hide-uri-scheme:
+:spring-cloud-stream-binder-rabbit-repo: snapshot
+:github-tag: master
+:spring-cloud-stream-binder-rabbit-docs-version: current
+:spring-cloud-stream-binder-rabbit-docs: http://docs.spring.io/spring-cloud-stream-binder-rabbit/docs/{spring-cloud-stream-binder-rabbit-docs-version}/reference
+:spring-cloud-stream-binder-rabbit-docs-current: http://docs.spring.io/spring-cloud-stream-binder-rabbit/docs/current-SNAPSHOT/reference/html/
+:github-repo: spring-cloud/spring-cloud-stream-binder-rabbit
+:github-raw: http://raw.github.com/{github-repo}/{github-tag}
+:github-code: http://github.com/{github-repo}/tree/{github-tag}
+:github-wiki: http://github.com/{github-repo}/wiki
+:github-master-code: http://github.com/{github-repo}/tree/master
+:sc-ext: java
+// ======================================================================================
+
+= Reference Guide
+include::overview.adoc[]
+
+
+= Appendices
+[appendix]
+include::building.adoc[]
+include::contributing.adoc[]
+
+// ======================================================================================
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/overview.adoc b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/overview.adoc
new file mode 100644
index 000000000..68a79b927
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/asciidoc/overview.adoc
@@ -0,0 +1,165 @@
+== Introduction
+This is Rabbitmq specific implementation for Spring Cloud Stream Binder.
+In the following sections, you can find more details
+on how you can work with Spring Cloud Stream Rabbit binder,
+in what concerns mapping the Spring Cloud Stream concepts onto the middleware concepts.
+
+==== Classpath Detection
+
+By default, Spring Cloud Stream relies on Spring Boot's auto-configuration to configure the binding process.
+Following are the maven coordinates for including the Rabbitmq binder in a Spring Cloud Stream application.
+[source,xml]
+----
+
+ org.springframework.cloud
+ spring-cloud-stream-binder-rabbit
+
+----
+
+==== Rabbit Binder Overview
+
+.Rabbit Binder
+image::rabbit-binder.png[width=300,scaledwidth="50%"]
+
+The RabbitMQ Binder implementation maps the destination to a `TopicExchange`.
+For each consumer group, a `Queue` will be bound to that `TopicExchange`.
+Each consumer instance that binds will trigger creation of a corresponding RabbitMQ `Consumer` instance for its group's `Queue`.
+
+== Configuration Options and Properties
+
+For common configuration options and properties pertaining to binder,
+Please refer to the https://github.com/spring-cloud/spring-cloud-stream/blob/master/spring-cloud-stream-docs/src/main/asciidoc/spring-cloud-stream-overview.adoc#configuration-options[core docs].
+
+=== RabbitMQ Binder-Specific Settings
+
+The following binder, consumer, and producer properties are specific to the RabbitMQ binder implementation.
+
+==== RabbitMQ Binder Properties
+
+By default, the RabbitMQ binder uses Spring Boot's `ConnectionFactory`, and it therefore supports all Spring Boot configuration options for RabbitMQ.
+(For reference, consult the http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#common-application-properties[Spring Boot documentation].) RabbitMQ configuration options use the `spring.rabbitmq` prefix.
+
+In addition to the Spring Boot options, the RabbitMQ binder supports the following properties:
+
+spring.cloud.stream.rabbit.binder.adminAddresses::
+ A comma-separated list of RabbitMQ management plugin URLs.
+Only used when `nodes` contains more than one entry.
+Each entry in this list must have a corresponding entry in `spring.rabbitmq.addresses`.
++
+Default: empty.
+spring.cloud.stream.rabbit.binder.nodes::
+ A comma-separated list of RabbitMQ node names.
+When more than one entry, used to locate the server address where a queue is located.
+Each entry in this list must have a corresponding entry in `spring.rabbitmq.addresses`.
++
+Default: empty.
+spring.cloud.stream.rabbit.binder.compressionLevel::
+ Compression level for compressed bindings.
+See `java.util.zip.Deflater`.
++
+Default: `1` (BEST_LEVEL).
+
+==== RabbitMQ Consumer Properties
+
+The following properties are available for Rabbit consumers only and
+must be prefixed with `spring.cloud.stream.rabbit.bindings..consumer.`.
+
+acknowledgeMode::
+ The acknowledge mode.
++
+Default: `AUTO`.
+autoBindDlq::
+ Whether to automatically declare the DLQ and bind it to the binder DLX.
++
+Default: `false`.
+durableSubscription::
+ Whether subscription should be durable.
+Only effective if `group` is also set.
++
+Default: `true`.
+maxConcurrency::
+ Default: `1`.
+prefetch::
+ Prefetch count.
++
+Default: `1`.
+prefix::
+ A prefix to be added to the name of the `destination` and queues.
++
+Default: "".
+recoveryInterval::
+ The interval between connection recovery attempts, in milliseconds.
++
+Default: `5000`.
+requeueRejected::
+ Whether delivery failures should be requeued.
++
+Default: `true`.
+requestHeaderPatterns::
+ The request headers to be transported.
++
+Default: `[STANDARD_REQUEST_HEADERS,'*']`.
+replyHeaderPatterns::
+ The reply headers to be transported.
++
+Default: `[STANDARD_REQUEST_HEADERS,'*']`.
+republishToDlq::
+ By default, messages which fail after retries are exhausted are rejected.
+If a dead-letter queue (DLQ) is configured, RabbitMQ will route the failed message (unchanged) to the DLQ.
+If set to `true`, the bus will republish failed messages to the DLQ with additional headers, including the exception message and stack trace from the cause of the final failure.
+transacted::
+ Whether to use transacted channels.
++
+Default: `false`.
+txSize::
+ The number of deliveries between acks.
++
+Default: `1`.
+
+==== Rabbit Producer Properties
+
+The following properties are available for Rabbit producers only and
+must be prefixed with `spring.cloud.stream.rabbit.bindings..producer.`.
+
+autoBindDlq::
+ Whether to automatically declare the DLQ and bind it to the binder DLX.
++
+Default: `false`.
+batchingEnabled::
+ Whether to enable message batching by producers.
++
+Default: `false`.
+batchSize::
+ The number of messages to buffer when batching is enabled.
++
+Default: `100`.
+batchBufferLimit::
+ Default: `10000`.
+batchTimeout::
+ Default: `5000`.
+compress::
+ Whether data should be compressed when sent.
++
+Default: `false`.
+deliveryMode::
+ Delivery mode.
++
+Default: `PERSISTENT`.
+prefix::
+ A prefix to be added to the name of the `destination` exchange.
++
+Default: "".
+requestHeaderPatterns::
+ The request headers to be transported.
++
+Default: `[STANDARD_REQUEST_HEADERS,'*']`.
+replyHeaderPatterns::
+ The reply headers to be transported.
++
+Default: `[STANDARD_REQUEST_HEADERS,'*']`.
+
+[NOTE]
+====
+In the case of RabbitMQ, content type headers can be set by external applications.
+Spring Cloud Stream supports them as part of an extended internal protocol used for any type of transport (including transports, such as Kafka, that do not normally support headers).
+====
\ No newline at end of file
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/highlight.css b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/highlight.css
new file mode 100644
index 000000000..ffefef72d
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/highlight.css
@@ -0,0 +1,35 @@
+/*
+ code highlight CSS resemblign the Eclipse IDE default color schema
+ @author Costin Leau
+*/
+
+.hl-keyword {
+ color: #7F0055;
+ font-weight: bold;
+}
+
+.hl-comment {
+ color: #3F5F5F;
+ font-style: italic;
+}
+
+.hl-multiline-comment {
+ color: #3F5FBF;
+ font-style: italic;
+}
+
+.hl-tag {
+ color: #3F7F7F;
+}
+
+.hl-attribute {
+ color: #7F007F;
+}
+
+.hl-value {
+ color: #2A00FF;
+}
+
+.hl-string {
+ color: #2A00FF;
+}
\ No newline at end of file
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual-multipage.css b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual-multipage.css
new file mode 100644
index 000000000..0c484531c
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual-multipage.css
@@ -0,0 +1,9 @@
+@IMPORT url("manual.css");
+
+body.firstpage {
+ background: url("../images/background.png") no-repeat center top;
+}
+
+div.part h1 {
+ border-top: none;
+}
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual-singlepage.css b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual-singlepage.css
new file mode 100644
index 000000000..4a7fd1400
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual-singlepage.css
@@ -0,0 +1,6 @@
+@IMPORT url("manual.css");
+
+body {
+ background: url("../images/background.png") no-repeat center top;
+}
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual.css b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual.css
new file mode 100644
index 000000000..0ecbe2e88
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/css/manual.css
@@ -0,0 +1,344 @@
+@IMPORT url("highlight.css");
+
+html {
+ padding: 0pt;
+ margin: 0pt;
+}
+
+body {
+ color: #333333;
+ margin: 15px 30px;
+ font-family: Helvetica, Arial, Freesans, Clean, Sans-serif;
+ line-height: 1.6;
+ -webkit-font-smoothing: antialiased;
+}
+
+code {
+ font-size: 16px;
+ font-family: Consolas, "Liberation Mono", Courier, monospace;
+}
+
+:not(a)>code {
+ color: #6D180B;
+}
+
+:not(pre)>code {
+ background-color: #F2F2F2;
+ border: 1px solid #CCCCCC;
+ border-radius: 4px;
+ padding: 1px 3px 0;
+ text-shadow: none;
+ white-space: nowrap;
+}
+
+body>*:first-child {
+ margin-top: 0 !important;
+}
+
+div {
+ margin: 0pt;
+}
+
+hr {
+ border: 1px solid #CCCCCC;
+ background: #CCCCCC;
+}
+
+h1,h2,h3,h4,h5,h6 {
+ color: #000000;
+ cursor: text;
+ font-weight: bold;
+ margin: 30px 0 10px;
+ padding: 0;
+}
+
+h1,h2,h3 {
+ margin: 40px 0 10px;
+}
+
+h1 {
+ margin: 70px 0 30px;
+ padding-top: 20px;
+}
+
+div.part h1 {
+ border-top: 1px dotted #CCCCCC;
+}
+
+h1,h1 code {
+ font-size: 32px;
+}
+
+h2,h2 code {
+ font-size: 24px;
+}
+
+h3,h3 code {
+ font-size: 20px;
+}
+
+h4,h1 code,h5,h5 code,h6,h6 code {
+ font-size: 18px;
+}
+
+div.book,div.chapter,div.appendix,div.part,div.preface {
+ min-width: 300px;
+ max-width: 1200px;
+ margin: 0 auto;
+}
+
+p.releaseinfo {
+ font-weight: bold;
+ margin-bottom: 40px;
+ margin-top: 40px;
+}
+
+div.authorgroup {
+ line-height: 1;
+}
+
+p.copyright {
+ line-height: 1;
+ margin-bottom: -5px;
+}
+
+.legalnotice p {
+ font-style: italic;
+ font-size: 14px;
+ line-height: 1;
+}
+
+div.titlepage+p,div.titlepage+p {
+ margin-top: 0;
+}
+
+pre {
+ line-height: 1.0;
+ color: black;
+}
+
+a {
+ color: #4183C4;
+ text-decoration: none;
+}
+
+p {
+ margin: 15px 0;
+ text-align: left;
+}
+
+ul,ol {
+ padding-left: 30px;
+}
+
+li p {
+ margin: 0;
+}
+
+div.table {
+ margin: 1em;
+ padding: 0.5em;
+ text-align: center;
+}
+
+div.table table,div.informaltable table {
+ display: table;
+ width: 100%;
+}
+
+div.table td {
+ padding-left: 7px;
+ padding-right: 7px;
+}
+
+.sidebar {
+ line-height: 1.4;
+ padding: 0 20px;
+ background-color: #F8F8F8;
+ border: 1px solid #CCCCCC;
+ border-radius: 3px 3px 3px 3px;
+}
+
+.sidebar p.title {
+ color: #6D180B;
+}
+
+pre.programlisting,pre.screen {
+ font-size: 15px;
+ padding: 6px 10px;
+ background-color: #F8F8F8;
+ border: 1px solid #CCCCCC;
+ border-radius: 3px 3px 3px 3px;
+ clear: both;
+ overflow: auto;
+ line-height: 1.4;
+ font-family: Consolas, "Liberation Mono", Courier, monospace;
+}
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+ border: 1px solid #DDDDDD !important;
+ border-radius: 4px !important;
+ border-collapse: separate !important;
+ line-height: 1.6;
+}
+
+table thead {
+ background: #F5F5F5;
+}
+
+table tr {
+ border: none;
+ border-bottom: none;
+}
+
+table th {
+ font-weight: bold;
+}
+
+table th,table td {
+ border: none !important;
+ padding: 6px 13px;
+}
+
+table tr:nth-child(2n) {
+ background-color: #F8F8F8;
+}
+
+td p {
+ margin: 0 0 15px 0;
+}
+
+div.table-contents td p {
+ margin: 0;
+}
+
+div.important *,div.note *,div.tip *,div.warning *,div.navheader *,div.navfooter *,div.calloutlist *
+ {
+ border: none !important;
+ background: none !important;
+ margin: 0;
+}
+
+div.important p,div.note p,div.tip p,div.warning p {
+ color: #6F6F6F;
+ line-height: 1.6;
+}
+
+div.important code,div.note code,div.tip code,div.warning code {
+ background-color: #F2F2F2 !important;
+ border: 1px solid #CCCCCC !important;
+ border-radius: 4px !important;
+ padding: 1px 3px 0 !important;
+ text-shadow: none !important;
+ white-space: nowrap !important;
+}
+
+.note th,.tip th,.warning th {
+ display: none;
+}
+
+.note tr:first-child td,.tip tr:first-child td,.warning tr:first-child td
+ {
+ border-right: 1px solid #CCCCCC !important;
+ padding-top: 10px;
+}
+
+div.calloutlist p,div.calloutlist td {
+ padding: 0;
+ margin: 0;
+}
+
+div.calloutlist>table>tbody>tr>td:first-child {
+ padding-left: 10px;
+ width: 30px !important;
+}
+
+div.important,div.note,div.tip,div.warning {
+ margin-left: 0px !important;
+ margin-right: 20px !important;
+ margin-top: 20px;
+ margin-bottom: 20px;
+ padding-top: 10px;
+ padding-bottom: 10px;
+}
+
+div.toc {
+ line-height: 1.2;
+}
+
+dl,dt {
+ margin-top: 1px;
+ margin-bottom: 0;
+}
+
+div.toc>dl>dt {
+ font-size: 32px;
+ font-weight: bold;
+ margin: 30px 0 10px 0;
+ display: block;
+}
+
+div.toc>dl>dd>dl>dt {
+ font-size: 24px;
+ font-weight: bold;
+ margin: 20px 0 10px 0;
+ display: block;
+}
+
+div.toc>dl>dd>dl>dd>dl>dt {
+ font-weight: bold;
+ font-size: 20px;
+ margin: 10px 0 0 0;
+}
+
+tbody.footnotes * {
+ border: none !important;
+}
+
+div.footnote p {
+ margin: 0;
+ line-height: 1;
+}
+
+div.footnote p sup {
+ margin-right: 6px;
+ vertical-align: middle;
+}
+
+div.navheader {
+ border-bottom: 1px solid #CCCCCC;
+}
+
+div.navfooter {
+ border-top: 1px solid #CCCCCC;
+}
+
+.title {
+ margin-left: -1em;
+ padding-left: 1em;
+}
+
+.title>a {
+ position: absolute;
+ visibility: hidden;
+ display: block;
+ font-size: 0.85em;
+ margin-top: 0.05em;
+ margin-left: -1em;
+ vertical-align: text-top;
+ color: black;
+}
+
+.title>a:before {
+ content: "\00A7";
+}
+
+.title:hover>a,.title>a:hover,.title:hover>a:hover {
+ visibility: visible;
+}
+
+.title:focus>a,.title>a:focus,.title:focus>a:focus {
+ outline: 0;
+}
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/background.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/background.png
new file mode 100644
index 000000000..d4195e5b3
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/background.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/caution.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/caution.png
new file mode 100644
index 000000000..8a5e4fca0
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/caution.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/important.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/important.png
new file mode 100644
index 000000000..ec54df65c
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/important.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/logo.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/logo.png
new file mode 100644
index 000000000..45f1978f3
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/logo.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/note.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/note.png
new file mode 100644
index 000000000..88d997b17
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/note.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/tip.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/tip.png
new file mode 100644
index 000000000..6530abb4b
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/tip.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/warning.png b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/warning.png
new file mode 100644
index 000000000..0d5b52446
Binary files /dev/null and b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/images/warning.png differ
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/common.xsl b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/common.xsl
new file mode 100644
index 000000000..157bf9d85
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/common.xsl
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+ 1
+ 0
+ 1
+
+
+
+ images/
+ .png
+
+
+ book toc,title
+ 3
+
+
+
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/epub.xsl b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/epub.xsl
new file mode 100644
index 000000000..031406ca4
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/epub.xsl
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html-multipage.xsl b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html-multipage.xsl
new file mode 100644
index 000000000..be9cc52de
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html-multipage.xsl
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+ css/manual-multipage.css
+
+ '5'
+ '1'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ firstpage
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html-singlepage.xsl b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html-singlepage.xsl
new file mode 100644
index 000000000..6bd4ac819
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html-singlepage.xsl
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+ css/manual-singlepage.css
+
+
diff --git a/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html.xsl b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html.xsl
new file mode 100644
index 000000000..fd96f9a70
--- /dev/null
+++ b/spring-cloud-stream-binder-rabbit-docs/src/main/docbook/xsl/html.xsl
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+ 120
+ images/callouts/
+ .png
+
+
+ text/css
+
+ text-align: left
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ,
+
+
+
+
+
+
+
+