This commit separates the basic setup of Couchbase from Spring Data so
that a `Bucket` and `Cluster` bucket beans are exposed even if Spring
Data is not available.
A basic setup happens if `spring.couchbase.bootstrap-hosts` is specified,
configuring the `default` bucket with no authentication unless specified
otherwise.
If Spring Data is available, those beans are re-used by default to
configure the `CouchbaseTemplate` and other repository-related beans.
Closes gh-5347
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
= Spring Boot Couchbase Sample
This sample demonstrates how you can store a simple document using Spring Data Couchbase.
The sample expects couchbase to run on your machine with a bucket named `default` and
no password. You can customize these settings in `application.properties`.
This sample also configures the `auto-index` property and the `UserRepository` defines
the `all` view so you should be able to invoke `findAll` for this sample.
== Creating the view manually
If you don't want to rely on `auto-index` and better understand how this works behind the
scenes, you need to create an `all` view for the `User`. Go to the Couchbase server’s
admin console and visit the Views screen, then click `Create Development View` and name
it `all` with `user` as document name. On that view, you need to change the code to:
```java
function (doc, meta) {
if (doc._class == "sample.data.couchbase.User") {
emit(meta.id, null);
}
}
```
and the _reduce_ function to `_count`. After you've saved your changes go back to `Views`
and click on `Publish` so that the `all` view move to the `Production Views` tab.