On behalf of the SDK Engineering Team, I’m happy to introduce the second developer preview for the Couchbase JCache implementation.
This new preview is still work in progress, a few features have been added and polished since last preview. As always, feel free to toy with it and provide feedback.
Obtaining The New Developer Preview
The plan is still to make it available on Maven Central, but for now the Couchbase JCache implementation is hosted on our own Maven repository. You can grab the developer preview from there by adding the following to your
- All data manipulation operations are now implemented (including LoadAll).
- The iterator (which is based on views under the wire) now can remove().
- Statistics are fully gathered (except for expiries).
- Exceptions are correctly wrapped into CacheExceptions as needed.
- Concurrency Model: we’ve tried to come closer to the concurrency model exposed in the specification while using Couchbase optimistic locking capabilities. There’s still no pessimistic locking in place though.
- Listeners and Notifications have been implemented, except for Expiry notification (the expiries are implemented via Couchbase’s TTL, and we don’t get notified of expiries).
What’s Still To Come?
This developer preview showcases the general direction we went with this implementation.
The remaining things to implement in order to have a full specification coverage are:
- adding support for EntryProcessors
- implementing read-through and write-through
- adding annotation support
I hope this will be of interest to you. If you want to learn more about JCache or the Java SDK (and maybe come back here later), here are some resources:
If you have some suggestions or feedback to give, please do! The best place to do so is in the comments below or in the official forums.
You can also file Issues in our bug tracker (use the “Couchbase Java Client” project, aka JCBC, and use JCache component).
I hope you enjoyed this second preview. Happy coding!