Marklogic Java Client Api Versions Save

Java client for the MarkLogic enterprise NoSQL database

6.6.0

3 weeks ago

This minor release coincides with the release of MarkLogic Server 11.2.0 and provides the following enhancements:

  • Can now authenticate with a MarkLogic app server that requires OAuth authentication. Can either use the new OAuthContext class or the new marklogic.client.oauth.token property when constructing a DatabaseClient via properties.
  • Can now patch one or more documents via an Optic plan using the new patchBuilder method available on com.marklogic.client.expression.PlanBuilder. Requires MarkLogic 11.2.0 or higher.
  • Can now capture errors occuring during execution of an Optic plan via the new onError method. Requires MarkLogic 11.2.0 or higher.
  • The com.marklogic.client.document.GenericDocumentManager interface now support temporal operations.
  • DMSDK log messages pertaining to a queue being flushed are now at the debug and trace levels instead of info.
  • Fixed #1637 so that the DMSDK awaitCompletion method waits for the correct duration.

6.5.0

3 months ago

This minor release addresses the following items:

  • When constructing a DatabaseClient and configuring two-way SSL, a separate trust store can be configured via the new properties marklogic.client.truststore.path, marklogic.client.truststore.password, marklogic.client.truststore.type, and marklogic.client.truststore.algorithm. These can be passed in via the newClient(Function<String, Object> propertySource) method or programmatically set with new methods in DatabaseClientBuilder.
  • The OkHttp dependency was bumped from 4.11.0 to 4.12.0.
  • The Jackson dependency was bumped from 2.15.2 to 2.15.3.

6.4.1

5 months ago

This patch release addresses the following items:

  • DocumentManager.search now works when METADATAVALUES has been set as a category on the DocumentManager.
  • 3 methods in DocumentManager that support searching/reading on a server timestamp have been exposed; they have long been working in the implementation class but were mistakenly never exposed in the interface.

6.4.0

6 months ago

This minor release addresses the following items:

  • Two-way SSL can now be configured via a new set of properties - marklogic.client.ssl.keystore.path, marklogic.client.ssl.keystore.password, marklogic.client.ssl.keystore.type, and marklogic.client.ssl.keystore.algorithm. These can be passed in via the newClient(Function<String, Object> propertySource) method or programmatically set with new methods in DatabaseClientBuilder.
  • Support was added for new Optic methods in MarkLogic 11.1: joinDocAndUri is now supported; cts.point and cts.polygon now accept String arguments; and op.geo.geohashSubhashes can be called with a single column argument.

6.3.0

8 months ago

This minor release addresses the following items:

  • #1565 Optimistic locking failures now throw either ContentWrongVersionException or ContentNoVersionException instead of the too-generic FailedRequestException (both new exceptions extend FailedRequestException though).
  • DocumentMetadataHandle.DocumentPermissions now has an addFromDelimitedString method for the common use case of defining permissions via a string of the form "role1,capability1,role2,capability2,etc".
  • Inclusion of the "Accept-Encoding=gzip" request header, which by default is sent on every request, can be disabled for users that do not want responses to be gzipped. This can be accomplished either via the new com.marklogic.client.extra.okhttpclient.RemoveAcceptEncodingConfigurator class or by setting the marklogic.client.disabledGzippedResponses property to true when constructing a DatabaseClient via a set of properties.
  • DatabaseClientFactory.addConfigurator can now be called multiple times. Configurators can be removed via the new DatabaseClientFactory.removeConfigurators method.
  • The com.fasterxml.jackson dependencies were bumped from 2.14.3 to 2.15.2.

6.2.2

9 months ago

This patch release addresses the following issues:

  • Constructing a CertificateAuthContext via DatabaseClientBuilder no longer requires a certificate file and password to be provided. A certificate can be provided via an SSLContext instead.
  • Improved error message when document metadata fails to be written.

6.2.1

11 months ago

This patch release addresses the following issues:

  • #1566 resultRows in RowManager now honors point-in-time query timestamp
  • #1562 MarkLogic Cloud token renewal is now based on a 401 response code
  • #1561 Improved error message when HTTP is used but HTTPS is required by the MarkLogic app server
  • #1559 Upgraded OkHttp dependency from 4.10 to 4.11 and Jackson dependency from 2.14.1 to 2.14.3

6.2.0

1 year ago

The 6.2.0 release of the MarkLogic Java Client includes the following enhancements and fixes:

  • #1537 A StructuredQueryDefinition can now be serialized via a javax.xml.stream.XMLStreamWriter.
  • RowManager now supports submitting GraphQL queries via the new graphql and graphqlAs methods.
  • The columnInfo method in RowManager now supports any type of plan.
  • ExportListener now accepts a Consumer<DocumentPage> so that users can process a batch of documents instead of one document at a time.
  • The size of a thread pool used by QueryBatcher can now be adjusted at runtime.
  • Errors resulting from dropped or failed connections now include more context to assist with debugging.
  • Tokens are now automatically renewed when using MarkLogic Cloud authentication.

6.1.0

1 year ago

The 6.1.0 release of the MarkLogic Java Client includes the following enhancements and fixes:

  • A base path can now be provided when constructing a DatabaseClient, enabling scenarios such as a reverse proxy running in front of MarkLogic.
  • Added a new factory method to DatabaseClientFactory for constructing a DatabaseClient based on a standard set of property names. This is intended to simplify scenarios where an application can collect a variety of inputs from a user for constructing a DatabaseClient. The application can now use this factory method to determine how to construct the client.
  • Added a new DatabaseClientBuilder that provides a fluent builder-style approach to constructing a DatabaseClient.
  • Added support for authenticating with the upcoming MarkLogic Cloud service.
  • Fixed #1327, where QueryBatcher would fail to stop when an error occurred while retrieving URIs.
  • Fixed a bug where errors from the REST eval endpoint were not handled correctly, thus hiding the actual error. The actual error is now returned to the user.
  • Fixed a bug where the fromDocDescriptors method in PlanBuilder might fail due to a class-not-found error.
  • Cookbook examples are now in a separate Gradle subproject.

This minor release does not coincide with a release of the MarkLogic server. It continues to support all released versions of MarkLogic 11 and will work with MarkLogic 10 with the exception of features it supports that do not exist in MarkLogic 10, such as the Optic Update support introduced in the 6.0.0 release.

6.0.0

1 year ago

The 6.0.0 release of the MarkLogic Java Client coincides with the release of MarkLogic 11 and includes the following enhancements and fixes: