Switch branches/tags
Commits on Mar 21, 2018
  1. DATAMONGO-1909 - Fix typo on return statement.

    felipeaffonso authored and mp911de committed Jan 5, 2018
    Original pull request: #523.
  2. DATAMONGO-1891 - Polishing.

    mp911de committed Mar 21, 2018
    Tweaked wording.
    Original pull request: #542.
  3. DATAMONGO-1891 - Improve $jsonSchema documentation.

    christophstrobl authored and mp911de committed Mar 21, 2018
    Original pull request: #542.
  4. DATAMONGO-1907 - Polishing.

    mp911de committed Mar 21, 2018
    Rename test method to reflect test subject.
    Switch from flatMap(…) to map(…) to avoid overhead of Mono creation.
    Original pull request: #541.
  5. DATAMONGO-1907 - Adjust SimpleReactiveMongoRepository.findOne(…) to c…

    rubenjgarcia authored and mp911de committed Mar 20, 2018
    …omplete without exception on empty result
    We now no longer emit an exception via SimpleReactiveMongoRepository.findOne(Example) if the query completes without yielding a result. Previously findOne(Example) emitted a NoSuchElementException if the query returned no result.
    Original pull request: #541.
Commits on Mar 20, 2018
  1. DATAMONGO-1880 - Polishing.

    mp911de committed Mar 19, 2018
    Turn instance methods into static ones where applicable. Avoid parameter type array cloning where possible.
    Add reference to rework stack-trace inspection in order to throw ClientSessionException. Migrate MongoPersistentEntityIndexCreatorUnitTests to AssertJ. Add tests to verify simple session proxy wrapping on subsequent MongoDbFactory.withSession(…) calls.
    Guard ClientSession tests with replica set rule. Remove unused code. Add non-null guards. Add missing Nullable annotations. Slightly tweak Javadoc and reference documentation.
    Original pull request: #536.
  2. DATAMONGO-1880 - Add support for ClientSession.

    christophstrobl authored and mp911de committed Feb 23, 2018
    We now support ClientSession via MongoOperations and ReactiveMongoOperations. Client sessions introduce causal consistency and retryable writes. A client Session can be either provided by application code or managed by specifying ClientSessionOptions. Binding a ClientSession via MongoOperations.withSession(…) provides access to a Session-bound MongoOperations instance that associates the session with each MongoDB operation.
    ClientSession support applies only to MongoOperations and ReactiveMongoOperations and is not yet available via repositories.
    ClientSession session = client.startSession(ClientSessionOptions.builder().causallyConsistent(true).build());
    Person person = template.withSession(() -> session)
            .execute(action -> {
              action.insert(new Person("wohoo"));
              return action.findOne(query(where("id").is("wohoo")), Person.class);
    Original pull request: #536.
Commits on Mar 15, 2018
  1. DATAMONGO-1904 - Optimizations in MappingMongoConverter.readCollectio…

    olivergierke committed Mar 15, 2018
    Switched to ClassUtils.isAssignableValue(…) in getPotentiallyConvertedSimpleRead(…) as it transparently handles primitives and their wrapper types so that we can avoid the superfluous invocation of the converter infrastructure.
  2. DATAMONGO-1904 - Fixed handling of nested arrays on reads in MappingM…

    olivergierke committed Mar 15, 2018
    We now properly forward the component type information into recursive calls to MappingMongoConverter.readCollectionOrArray(…).
Commits on Mar 14, 2018
Commits on Mar 12, 2018
  1. DATAMONGO-1899 - Export composable repositories via CDI.

    mp911de committed Mar 12, 2018
    We now export composable repositories through our CDI extension. Repositories can now be customized either by a single custom implementation (as it was before) and by providing fragment interfaces along their fragment implementation.
    This change aligns CDI support with the existing RepositoryFactory support we provide within a Spring application context.
  2. DATAMONGO-1898 - Added unit tests for the conversion handling of enum…

    olivergierke committed Mar 12, 2018
    …s implementing interfaces.
    Related tickets: DATACMNS-1278.
Commits on Mar 8, 2018
  1. DATAMONGO-1896 - SimpleMongoRepository.saveAll(…) now consistently us…

    olivergierke committed Mar 8, 2018
    …es aggregate collection for inserts.
    We previously used MongoTemplate.insertAll(…) which determines the collection to insert the individual elements based on the type, which - in cases of entity inheritance - will use dedicated collections for sub-types of the aggregate root. Subsequent lookups of the entities will then fail, as those are executed against the collection the aggregate root is mapped to.
    We now rather use ….insert(Collection, String) handing the collection of the aggregate root explicitly.
Commits on Mar 2, 2018
  1. DATAMONGO-1877 - Polishing.

    mp911de committed Mar 2, 2018
    Add JsonSchemaProperty#timestamp(). Fix JavaDoc.
    Original pull request: #537.
  2. DATAMONGO-1877 - Add JsonSchemaProperty for date type.

    christophstrobl authored and mp911de committed Mar 2, 2018
    We now provide factory methods and schema objects for date and timestamp types.
    Original pull request: #537.
Commits on Feb 28, 2018
Commits on Feb 19, 2018
  1. DATAMONGO-1881 - Upgrade MongoDB sync & reactive streams Java driver …

    christophstrobl committed Feb 19, 2018
    …to 3.6.3 and 1.7.1.
    Drivers work fine against MongoDB server 3.4.9, 3.6.0 and 3.7.1.
Commits on Feb 15, 2018
  1. DATAMONGO-1870 - Polishing.

    mp911de committed Feb 15, 2018
    Extend copyright license years. Slightly reword documentation. Use IntStream and insertAll to create test fixture.
    Original pull request: #532.
    Related pull request: #531.
  2. DATAMONGO-1870 - Consider skip/limit on MongoOperations.remove(Query,…

    christophstrobl authored and mp911de committed Feb 12, 2018
    … Class).
    We now use _id lookup for remove operations that query with limit or skip parameters. This allows more fine grained control over documents removed.
    Original pull request: #532.
    Related pull request: #531.
Commits on Feb 14, 2018
  1. DATAMONGO-1860 - Polishing.

    christophstrobl committed Feb 14, 2018
    Fix references to QuerydslPredicateExecutor.
    Original Pull Request: #529
  2. DATAMONGO-1860 - Polishing.

    mp911de authored and christophstrobl committed Feb 8, 2018
    Fix type references in Javadoc. Change lambdas to method references where applicable.
    Original Pull Request: #529
  3. DATAMONGO-1860 - Retrieve result count via QuerydslMongoPredicateExec…

    mp911de authored and christophstrobl committed Feb 8, 2018
    …utor only for paging.
    We now use AbstractMongodbQuery.fetch() instead of AbstractMongodbQuery.fetchResults() to execute MongoDB queries. fetchResults() executes a find(…) and a count(…) query. Retrieving the record count is an expensive operation in MongoDB and the count is not always required. For regular find(…) method, the count is ignored, for paging the count(…) is only required in certain result/request scenarios.
    Original Pull Request: #529
  4. DATAMONGO-1865 - Polishing.

    mp911de committed Feb 14, 2018
    Adapt to collection name retrieval during query execution. Slightly reword documentation and JavaDoc.
    Original pull request: #530.
  5. DATAMONGO-1865 - Avoid IncorrectResultSizeDataAccessException for der…

    christophstrobl authored and mp911de committed Feb 7, 2018
    …ived findFirst/findTop queries.
    We now return the first result when executing findFirst/findTop queries. This fixes a glitch introduced in the Kay release throwing IncorrectResultSizeDataAccessException for single entity executions returning more than one result, which is explicitly not the desired behavior in this case.
    Original pull request: #530.
  6. DATAMONGO-1871 - Polishing.

    mp911de committed Feb 14, 2018
    Migrate test to AssertJ.
    Original pull request: #533.
  7. DATAMONGO-1871 - Fix AggregationExpression aliasing.

    christophstrobl authored and mp911de committed Feb 13, 2018
    We now make sure to allow a nested property alias by setting the target.
    Original pull request: #533.
Commits on Feb 13, 2018
  1. DATAMONGO-1872 - Polishing.

    olivergierke committed Feb 13, 2018
    Fixed @since tag for newly introduced method in MongoEntityMetadata.
  2. DATAMONGO-1873 - Added value() as alias for @Document(collection = "…").

    olivergierke committed Feb 13, 2018
    This allows to avoid having to use the explicit collection attribute in case the collection name is supposed to be customized.
  3. DATAMONGO-1872 - Polishing.

    olivergierke committed Feb 13, 2018
    Fixed imports in MongoTemplate.
  4. DATAMONGO-1872 - Repository query execution doesn't prematurely fix c…

    olivergierke committed Feb 13, 2018
    …ollection to be queried.
    We now avoid calling ….inCollection(…) with a fixed, one-time calculated collection name to make sure we dynamically resolve the collections. That's necessary to make sure SpEL expressions in @Document are evaluated for every query execution.
Commits on Feb 7, 2018
Commits on Feb 6, 2018