Commit Graph

354 Commits

Author SHA1 Message Date
Oliver Gierke
ce8dd97d66 DATACOUCH-262 - Adapt API in CouchbaseRepositoryFactoryBean.
Related ticket: DATACMNS-891.
2016-12-15 16:21:27 +01:00
Mark Paluch
810134d416 DATACOUCH-261 - Register CouchbaseRepositoryFactory in spring.factories.
This is required for the switch in support for multi-store detection.

Related ticket: DATACMNS-952.
2016-12-06 09:04:56 +01:00
Oliver Gierke
610a6e51d2 DATACOUCH-246 - Polishing.
Removed the dynamic return type obtained from the ResultProcessor held in a query implementation field as this breaks thread safety. We now hand the type to read into the execution methods.

Adapted test cases accordingly and removed a bit of mocking.

Original pull request: #122.
2016-12-02 18:04:15 +01:00
Subhashni Balakrishnan
ce356f827f DATACOUCH-246 - Projections support for query derivation.
Used the result processor projecting information to just fetch the selected fields and again to post process results to projection object/interfaces.

Added test for projection using DTO.

Original pull request: #122.
2016-12-02 18:04:12 +01:00
Oliver Gierke
c8324caf7f DATACOUCH-255 - After release cleanups. 2016-11-23 10:59:11 +01:00
Oliver Gierke
e3d6fa649e DATACOUCH-255 - Prepare next development iteration. 2016-11-23 10:59:09 +01:00
Oliver Gierke
c9883bb6c8 DATACOUCH-255 - Release version 3.0 M1 (Kay). 2016-11-23 10:35:49 +01:00
Oliver Gierke
69f15e80a1 DATACOUCH-255 - Prepare 3.0 M1 (Kay). 2016-11-23 10:35:09 +01:00
Oliver Gierke
ab51b7b9c3 DATACOUCH-255 - Updated changelog. 2016-11-23 10:35:07 +01:00
Mark Paluch
554451b89d DATACOUCH-256 - Prepare 3.0 development. 2016-11-10 11:08:13 +01:00
Oliver Gierke
fc15fbef0e DATACOUCH-253 - Updated changelog. 2016-11-03 18:56:50 +01:00
Oliver Gierke
85c7718f36 DATACOUCH-249 - Updated changelog. 2016-09-29 14:42:12 +02:00
Oliver Gierke
20486f685e DATACOUCH-252 - Updated changelog. 2016-09-29 11:42:12 +02:00
Oliver Gierke
33cc185de2 DATACOUCH-247 - Updated changelog. 2016-09-21 08:07:40 +02:00
Oliver Gierke
ca3b0b44e6 DATACOUCH-236 - Updated changelog. 2016-09-21 08:07:38 +02:00
Young-Gu Chae
73f86a70ec DATACOUCH-243 - CouchbaseTemplate.doRemove() handle exceptions like doPersist() 2016-08-29 10:11:28 +02:00
Andrey Rubtsov
341c41250d DATACOUCH-239 - Allow configurable expiry in @Document.
Fixes #120
2016-08-18 13:21:14 +02:00
Simon Baslé
415d8a2d23 DATACOUCH-241 - Document mixing SpEL and N1QL placeholders 2016-08-18 12:55:24 +02:00
Oliver Gierke
7863688028 DATACOUCH-221 - After release cleanups. 2016-07-27 14:32:38 +02:00
Oliver Gierke
a612c9ce0d DATACOUCH-221 - Prepare next development iteration. 2016-07-27 14:32:36 +02:00
Oliver Gierke
3dc18b765c DATACOUCH-221 - Release version 2.2 M1 (Ingalls). 2016-07-27 13:52:13 +02:00
Oliver Gierke
5f0e906ae5 DATACOUCH-221 - Prepare 2.2 M1 (Ingalls). 2016-07-27 13:51:38 +02:00
Oliver Gierke
4a02688f58 DATACOUCH-221 - Updated changelog. 2016-07-27 13:51:36 +02:00
markramach
f18f61e371 DATACOUCH-237 - Prevent groupby on generated count queries
Fixes #119
2016-07-07 11:05:51 +02:00
Simon Bland
a40919ef8e DATACOUCH-235 - Fixed multiple Couchbase environments.
Defining <couchbase:env/> in XML configuration was causing a double
instantiation of DefaultCoreEnvironment, with subsequent warning in
logs:

[main] WARN c.c.client.core.env.CoreEnvironment - More than 1 Couchbase
Environments found (2), this can have severe impact on performance and
stability. Reuse environments!
2016-06-17 15:57:51 +02:00
Oliver Gierke
c5a1bf0515 DATACOUCH-222 - Updated changelog. 2016-06-15 14:31:49 +02:00
Simon Baslé
d6b63c305a DATACOUCH-227 - Keep isOrderRetained view param, bump to SDK 2.2.8 2016-06-13 16:28:50 +02:00
Simon Baslé
b5ae111787 DATACOUCH-229 - Check N1QL error codes rather than message
This should avoid problems when the message changes on the server side
(like in Couchbase Server 4.5).
2016-05-25 19:17:32 +02:00
Simon Baslé
9713b34801 DATACOUCH-231 - Bump SDK to latest patch 2.2.7 2016-05-25 19:02:54 +02:00
Simon Baslé
3abefe5882 DATACOUCH-228 - Make findByView use async client internally
This brings better performance when querying large views. Instead of
looping on a synchronously acquired list of documents to produce a list
of entities, the async API can be used internally to:
 - query the view
 - fetch the documents
 - map each document to an entity
 - collect into a List

One can then block on that Observable to get and return the List as
usual.
2016-05-25 18:26:02 +02:00
Geoffrey Mina
7a57a235d8 DATACOUCH-226 - Enable strict @Field mapping
If the MappingCouchbaseConverter strict mode is enabled and no annotation is present, the property will not be eligible for document mapping.

This allows to specifically ignore some attributes in Couchbase only. For generally ignoring attributes in any Spring Data backing store, prefer the standard `@Transient`.

Closes #112
2016-05-20 17:52:41 +02:00
Anastasiia Smirnova
811c024041 DATACOUCH-224 - Improve concurrent save/insert, optimistic locking 2016-05-10 15:48:34 +02:00
Jonathan Edwards
117f0d0968 DATACOUCH 225 - Minimal SDK 2.2.6 support 2016-05-09 09:31:23 -06:00
Oliver Gierke
2402c89e67 DATACOUCH-220 - Updated changelog. 2016-04-06 23:14:28 +02:00
Oliver Gierke
d0bc223154 DATACOUCH-218 - After release cleanups. 2016-04-06 16:37:04 +02:00
Oliver Gierke
45ae9d4a72 DATACOUCH-218 - Prepare next development iteration. 2016-04-06 16:37:00 +02:00
Oliver Gierke
2bbffe5573 DATACOUCH-218 - Release version 2.1 GA (Hopper). 2016-04-06 16:36:00 +02:00
Oliver Gierke
2734692fad DATACOUCH-218 - Prepare 2.1 GA (Hopper). 2016-04-06 16:34:47 +02:00
Oliver Gierke
7a19a34ba8 DATACOUCH-218 - Updated changelog. 2016-04-06 16:34:43 +02:00
Mark Paluch
9a6c4a06ce DATACOUCH-219 - Point to the appropriate Jira project. 2016-04-05 14:23:47 +02:00
Mark Paluch
453c37b873 DATACOUCH-219 - Add pull request template. 2016-04-05 10:03:48 +02:00
Oliver Gierke
d118c1c6f6 DATACOUCH-213 - After release cleanups. 2016-03-18 11:16:08 +01:00
Oliver Gierke
fd954ec6b1 DATACOUCH-213 - Prepare next development iteration. 2016-03-18 11:15:52 +01:00
Oliver Gierke
f0518727fe DATACOUCH-213 - Release version 2.1 RC1 (Hopper). 2016-03-18 11:15:01 +01:00
Oliver Gierke
dc9f70bb72 DATACOUCH-213 - Prepare 2.1 RC1 (Hopper). 2016-03-18 11:06:58 +01:00
Oliver Gierke
e683b71c4a DATACOUCH-213 - Updated changelog. 2016-03-18 11:06:56 +01:00
Mark Paluch
db4c24d9f1 DATACOUCH-203 - Use Set to store qualifiers in CDI extension.
Qualifiers are now stored in their original set instead of using the toString representation.
2016-03-15 14:13:14 +01:00
Simon Baslé
4aa823722a DATACOUCH-212 - Take Version/CAS into account on save
This change takes the `Version` annotated field into account when performing a `save` (either in the `CouchbaseTemplate` or transitively in a `CouchbaseRepository`).

Having such a field with a non-zero value means that a CAS is available, activating optimistic locking. Version 1.4 and below of Spring Data Couchbase was taking this CAS into account, whereas in 2.0 we switched to using `upsert` internally, which ignores the CAS.

This change brings the behavior of `save` (when there's a non-zero CAS) closer to what was observed in 1.4 versions: an `OptimisticLockingFailureException` can now be raised in case of CAS mismatch.
2016-03-14 20:00:16 +01:00
Simon Baslé
39fb52d2a6 DATACOUCH-91 - Support auditing (via java config)
This commit adds support for auditing via the use of the four annotations (CreatedBy, LastModifiedBy, CreationDate, LastModificationDate), enabled via the EnableCouchbaseAuditing annotation.

As couchbase entities MUST have an id, the only case where the creation event can be detected is when the entity has a Version annotated field.
2016-03-11 15:35:35 +01:00
Simon Baslé
dea461458b DATACOUCH-215 - Separate SDK/SDC beans in javaconfig
This commit allows to separate creation of beans dedicated to Spring Data Couchbase from the ones that can be made more common (SDK instances) and now can be provided externally through a a strategy interface, `CouchbaseConfigurer`.

Rather than having to extend a few methods from the base Configuration
class, `CouchbaseConfigurer` represents all the components that the Spring Data integration requires.
2016-03-11 10:58:38 +01:00