Commit Graph

1724 Commits

Author SHA1 Message Date
Oliver Gierke
aeb3a89825 DATAMONGO-1597 - Prepare next development iteration. 2017-03-02 12:05:54 +01:00
Oliver Gierke
678e967318 DATAMONGO-1597 - Release version 1.9.8 (Hopper SR8). 1.9.8.RELEASE 2017-03-02 11:30:05 +01:00
Oliver Gierke
ce6193a541 DATAMONGO-1597 - Prepare 1.9.8 (Hopper SR8). 2017-03-02 11:29:33 +01:00
Oliver Gierke
a3c21bf3af DATAMONGO-1597 - Updated changelog. 2017-03-02 11:29:27 +01:00
Oliver Gierke
850e95946a DATAMONGO-1598 - Updated changelog. 2017-03-02 11:11:02 +01:00
Mark Paluch
c316aceda1 DATAMONGO-1605 - Polishing.
Remove additional quoting around JSON serialization because JSON serialization adds quotes to a string. Reformat code.
2017-03-01 16:01:49 +01:00
Christoph Strobl
3385d96213 DATAMONGO-1605 - Retain type of SpEL expression result when used in @Query.
Fix issue where any result of a SpEL expression had been treated as quoted String within the resulting MongoDB query.
2017-03-01 16:01:48 +01:00
Mark Paluch
fa7d783940 DATAMONGO-1603 - Polishing.
Remove code that became unused. Reformat code. Extend years in copyright header.

Original pull request: #441.
2017-03-01 14:15:45 +01:00
Christoph Strobl
39ba28cdae DATAMONGO-1603 - Fix Placeholder not replaced correctly in @Query.
Fix issues when placeholders are appended with other chars eg. '?0xyz' or have been reused multiple times within the query. Additional tests and fixes for complex quoted replacements eg. in regex query. Rely on placeholder quotation indication instead of binding one. Might be misleading when placeholder is used more than once.

This backport contains elements from DATAMONGO-1575.

Original pull request: #441.
Related ticket: DATAMONGO-1575.
2017-03-01 14:15:37 +01:00
Oliver Gierke
7a32d40dd0 DATAMONGO-1617 - Reinstantiate version property initialization before BeforeConvertEvent publication.
Related pull request: #443.
2017-02-28 20:06:02 +01:00
Oliver Gierke
6593fef803 DATAMONGO-1617 - Polishing.
Some cleanups in MongoTemplateTests. Removed manual ID assignment in general id handling test to make sure we use the id generation. Removed unneccessary code from domain type in favor of Lombok.

Original pull request: #443.
2017-02-28 18:35:06 +01:00
Laszlo Csontos
5de3cb9ba3 DATAMONGO-1617 - BeforeConvertEvent is now emitted before updatable idendifier assertion.
We now make sure the BeforeConvertEvent is published before we check for identifier types that can potentially be auto-generated. That allows the event listeners to populate identifiers. Previously the identifier check kicked in before that and thus caused the listener not being able to populate the property.

Original pull request: #443.
2017-02-28 18:16:10 +01:00
Christoph Strobl
cd42b19718 DATAMONGO-1608 - Polishing.
Throw an IllegalArgumentException when trying to create a query using 'null' as an argument for queries resulting in a $regex query operator.

Original Pull Request: #439
2017-02-13 08:20:02 +01:00
Edward Prentice
eacfd2c172 DATAMONGO-1608 - Add guard against NPE in MongoQueryCreator when using IgnoreCase.
Original Pull Request: #439
2017-02-13 08:15:21 +01:00
Christoph Strobl
439616c788 DATAMONGO-1607 - Polishing.
Move coordinate conversion to dedicated method. Additionally fix issue with assertions applied to late in the chain and added some tests.

Original Pull Request: #438
2017-02-10 14:11:47 +01:00
Thiago Diniz da Silveira
40c3204fb8 DATAMONGO-1607 - Fix ClassCastException in Circle, Point and Sphere when coordinates are not Double.
Original Pull Request: #438
2017-02-10 14:11:41 +01:00
Mark Paluch
6ad5f62d66 DATAMONGO-1602 - Remove references to Assert single-arg methods.
Replace references to Assert single-arg methods with references to methods accepting the test object and message.

Related ticket: SPR-15196.
2017-02-01 11:31:29 +01:00
Oliver Gierke
1585cc420d DATAMONGO-1573 - After release cleanups. 2017-01-26 12:04:57 +01:00
Oliver Gierke
856f156318 DATAMONGO-1573 - Prepare next development iteration. 2017-01-26 12:04:54 +01:00
Oliver Gierke
00d9da3027 DATAMONGO-1573 - Release version 1.9.7 (Hopper SR7). 1.9.7.RELEASE 2017-01-26 11:33:51 +01:00
Oliver Gierke
53eaaa02a0 DATAMONGO-1573 - Prepare 1.9.7 (Hopper SR7). 2017-01-26 11:33:07 +01:00
Oliver Gierke
315b642b3b DATAMONGO-1573 - Updated changelog. 2017-01-26 11:33:00 +01:00
Oliver Gierke
958752e72f DATAMONGO-1574 - Updated changelog. 2017-01-26 11:23:29 +01:00
Christoph Strobl
6b1dbe372e DATAMONGO-1517 - Polishing.
Remove ReflectiveSimpleTypes in favor of MongoSimpleTypes.
Add add integration test.
2017-01-25 17:00:15 +01:00
Mark Paluch
a644187131 DATAMONGO-1517 - Add support for Decimal128 BSON type.
Support Decimal128 as Mongo simple type if present. Decimal128 is stored as NumberDecimal.

class Person {

  String id;
  Decimal128 decimal128;

  Person(String id, Decimal128 decimal128) {
    this.id = id;
    this.decimal128 = decimal128;
  }
}

mongoTemplate.save(new Person("foo", new Decimal128(new BigDecimal("123.456"))));

is represented as:

{ "_id" : "foo", "decimal128" : NumberDecimal("123.456") }
2017-01-25 16:58:02 +01:00
Mark Paluch
681a4f9855 DATAMONGO-1596 - Fix typo in JavaDoc.
Use correct @RelatedDocument annotation in MongoDB cross store reference documentation.
2017-01-25 16:52:54 +01:00
Oliver Gierke
f2be1b2ca9 DATAMONGO-1592 - Adapt AuditingEventListenerUnitTests to changes in core auditing.
The core auditing implementation now skips the invocation of auditing in case the candidate aggregate doesn't need any auditing in the first place. We needed to adapt the sample class we use to actually carry the necessary auditing annotations.

Related ticket: DATACMNS-957.
2017-01-20 16:36:09 +01:00
Oliver Gierke
3c203eba8e DATAMONGO-1590 - Polishing.
Removed some compiler warnings. Hide newly introduced class in package scope and made use of Lombok annotations to avoid boilerplate code.

Original pull request: #436.
2017-01-18 19:41:53 +01:00
Christoph Strobl
f3b0665d94 DATAMONGO-1590 - EntityInformation selected now correctly considers Persistable.
We now wrap the MappingMongoEntityInformation into one that delegates the methods implemented by Persistable to the actual entity in case it implements said interface.

Original pull request: #436.
2017-01-18 19:41:53 +01:00
Mark Paluch
9f43d3fc5a DATAMONGO-1588 - Polishing.
Remove unused fields. Fix typo in method name. Reformat inner class to align formatting.

Original pull request: #435.
2017-01-16 09:16:04 +01:00
Christoph Strobl
95985fffc8 DATAMONGO-1588 - Fix derived finder not accepting subclass of parameter type.
We now allow using sub types as arguments for derived queries. This makes it possible to use eg. a GeoJsonPoint for querying while the declared property type in the domain object remains a regular (legacy) Point.

Original pull request: #435.
2017-01-16 09:15:29 +01:00
Mark Paluch
6c6ac6da5b DATAMONGO-1586 - Consider field name in TypeBasedAggregationOperationContext.getReferenceFor(…).
We now consider the provided field name (alias) in mapped fields with which it is exposed. The field name applies to the exposed field after property path resolution in TypeBasedAggregationOperationContext. Previously, the field reference used the property name which caused fields to be considered non-aliased, so aggregation projection operations dropped the alias and exposed the field with its leaf property name.

Original Pull Request: #434
2017-01-12 10:09:33 +01:00
Christoph Strobl
c1ac8767b7 DATAMONGO-1585 - Polishing.
Update documentation for better readability in html and pdf format.

Original Pull Request: #433
2017-01-12 10:05:11 +01:00
Mark Paluch
96068eb0e2 DATAMONGO-1585 - Expose synthetic fields in $project aggregation stage.
Field projections now expose their fields as synthetic simple fields. Projection aggregation stage redefines the available field set available for later aggregation stages entirely so projected fields are considered synthetic. A simple synthetic field has no target field which causes later aggregation stages to not pick up the underlying target but the exposed field name when rendering aggregation operations to Mongo documents.

The change is motivated by a bug where previously an aggregation consisting of projection of an aliased field and sort caused the sort projection stage to render with the original field name instead of the aliased field. The sort did not apply any sorting since projection redefines the available field set entirely and the original field is no longer accessible.

Original Pull Request: #433
2017-01-12 10:04:19 +01:00
Christoph Strobl
36d2e0942b DATAMONGO-1576 - Update lifecycle event documentation.
Add note on lifecycle event handling for property types.
2017-01-11 13:11:02 +01:00
Mark Paluch
b585783b75 DATAMONGO-1578 - Polishing.
Add ticket references to test methods. Extend license years in copyright header.

Original pull request: #398.
2017-01-02 11:40:47 +01:00
Martin Macko
3924b6f12a DATAMONGO-1578 - Add missing @Test annotation to ProjectionOperationUnitTests.
Original pull request: #398.
2017-01-02 11:39:36 +01:00
Mark Paluch
2674880946 DATAMONGO-1508 - Improve reference documentation.
Replace Spring Data Document with Spring Data MongoDB. Extend copyright year range. Replace static Spring version leftover with variable. Fix typos.
2017-01-02 11:19:44 +01:00
Lukasz Kryger
6c6f953a42 DATAMONGO-1577 - Fix wording repetition in MongoRepository JavaDoc.
Original pull request: #407.
2017-01-02 11:19:44 +01:00
Ken Dombeck
772e8ac85e DATAMONGO-1577 - Fix Reference and JavaDoc spelling issues.
Replaced invalid class name MongoMappingConverter with actual class name of MappingMongoConverter. Fix typos.

Original pull request: #425.
2017-01-02 11:19:41 +01:00
Mark Paluch
2bbffed62b DATAMONGO-1508 - Polishing.
Highlight attribute name. Replace tabs with spaces.

Original pull request: #399.
2017-01-02 11:12:31 +01:00
John Lilley
685990bdd6 DATAMONGO-1508 - Document authentication-dbname attribute in db-factory.
Original pull request: #399.
2017-01-02 11:12:31 +01:00
Oliver Gierke
ff83ac3fb4 DATAMONGO-1522 - After release cleanups. 2016-12-21 19:33:44 +01:00
Oliver Gierke
6827a09f26 DATAMONGO-1522 - Prepare next development iteration. 2016-12-21 19:33:40 +01:00
Oliver Gierke
a5148f89c1 DATAMONGO-1522 - Release version 1.9.6 (Hopper SR6). 1.9.6.RELEASE 2016-12-21 19:04:46 +01:00
Oliver Gierke
995a680823 DATAMONGO-1522 - Prepare 1.9.6 (Hopper SR6). 2016-12-21 19:03:39 +01:00
Oliver Gierke
9f0abb69fd DATAMONGO-1522 - Updated changelog. 2016-12-21 19:03:32 +01:00
Oliver Gierke
d65eebe9c3 DATAMONGO-1469 - Updated changelog. 2016-12-21 18:42:59 +01:00
Oliver Gierke
ca4f1f1b7c DATAMONGO-1467 - Polishing.
Original pull request: #431.
2016-12-19 19:45:17 +01:00
Christoph Strobl
46b119ce71 DATAMONGO-1467 - Add support for MongoDB 3.2 partialFilterExpression for index creation.
We now support partial filter expression on indexes via Index.partial(…). This allows to create partial indexes that only index the documents in a collection that meet a specified filter expression. 

new Index().named("idx").on("k3y", ASC).partial(filter(where("age").gte(10)))

The filter expression can be set via a plain DBObject or a CriteriaDefinition and is mapped against the associated domain type.

Original pull request: #431.
2016-12-19 19:45:14 +01:00