Skip to content

Releases: box/box-java-sdk

v0.7.0

17 Feb 23:10
Compare
Choose a tag to compare
v0.7.0 Pre-release
Pre-release

This is a relatively minor release that adds support for Java 6. The only breaking change in this release is a new method that was added to the EventListener interface which allows listeners to be notified of changes in the event stream's position.

v0.6.0

06 Feb 02:54
Compare
Choose a tag to compare
v0.6.0 Pre-release
Pre-release

This release introduces support for the Box metadata API as well as some major performance improvements. Features include:

  • Metadata. You can now manipulate metadata properties associated with a BoxFile. Metadata allows your application to define and store custom data associated with files. For more information on Box metadata, see the documentation.
  • Shared item support. You can now retrieve items using their shared link. The SDK automatically handles shared link authentication, making it easy to access shared items and their children.
  • Request interceptors. Requests can be intercepted before they're sent to the API, allowing for applications to modify requests or prevent them from being sent entirely.
  • Performance improvements to persistent connections. HTTP keep-alive now works much more consistently, giving a massive performance boost to applications that send a large number of requests.
  • OAuth is now thread safe. OAuth refresh logic is now thread-safe, making authentication more reliable in multithreaded applications.
  • Support for OAuth refresh listeners. BoxAPIConnection now supports listeners that will be notified whenever an OAuth refresh happens. This makes it easier for applications to save authentication information for persistent logins.

Major bug fixes for this release include:

  • Fix restoring API connections from access and refresh tokens. A bug was fixed where restoring an API connection using saved access and refresh tokens would cause a token refresh error.
  • Fix crash when receiving a large number of duplicate events. When a large number of duplicate events was received, an exception would be thrown. This was caused by the EventStream's LRU not removing items correctly.
  • Fix bug when sending non-ASCII characters. The content length of requests with non-ASCII characters was being calculated incorrectly.

v0.5.0

09 Dec 01:53
Compare
Choose a tag to compare
v0.5.0 Pre-release
Pre-release

This release marks the beginning of the public beta for the SDK. It comes along with a new site that has documentation as well as coordinates for using the SDK with maven. There are also a bunch of new features which include:

  • Range downloading. Downloading files now supports byte ranges, allowing only portions of a file to be downloaded.
  • Basic searching. Folders can be recursively searched with an arbitrary query. Advanced search queries will be supported in a future release.
  • Support for groups. Groups can be created, deleted, and updated as well as used in collaborations.
  • Support for comments. In addition to being edited or deleted, comments can be added to files or added as a reply to other comments.
  • Support for trash. Add support for accessing items in the trash or restoring them to their original locations.
  • Fields can be specified when iterating over a folder's items. Fields can now be specified with a new getChildren(String...) method.
  • Retrieve range of child items. A specific range of children can be retrieved from folders, similar to how the API allows an offset and limit to be specified.
  • Complete javadoc documentation. Javadocs are complete and can be found on the SDK's site.

In addition to new features, there are also the following bug fixes:

  • Fix ProgressListeners for compressed downloads. Compressed gzipped downloads now have their progress reported correctly.
  • Fix potential infinite loop when iterating over folder items. The offset when paging through a folder's items wasn't correctly incremented.
  • Fix bug with createdAt and modifiedAt timestamps with file uploads. Timestamps where being formatted incorrectly when uploading a new file.

v0.4.0

27 Oct 06:49
Compare
Choose a tag to compare
v0.4.0 Pre-release
Pre-release

This is the first beta release of the SDK. It contains all the changes since v0.1 along with a few improvements around JSON handling and a new sample project.

Changes:

  • Shared links for folders. Shared links for folders can be created in the same way they are for files.
  • Sample project. A sample project can be found in src/example/java/com/box/sdk/example/Main.java that demonstrates the basics of how to use the SDK.
  • Improved handling of JSON updates. JSON update handling has been improved to support nested JSON objects.
  • Increased documentation.

v0.3.0

27 Oct 20:56
Compare
Choose a tag to compare
v0.3.0 Pre-release
Pre-release

This release adds support for additional API endpoints and continues to add more documentation.

  • Shared links for files. Shared links can be created and modified for files.
  • Collaborations endpoint. Collaborations can be created, retrieved, updated and removed.
  • Add ProgressListener support for requests and responses. The progress of BoxAPIRequests and BoxAPIResponses can be monitored by providing a ProgressListener.
  • Generic types were removed from Info classes. This makes working with resource info objects easier and less cumbersome.
  • Javadoc and guide improvements. Add more documentation for existing classes without javadocs.

v0.2.0

27 Oct 20:55
Compare
Choose a tag to compare
v0.2.0 Pre-release
Pre-release

This release focused on increasing testability, adding documentation and completing the files and folders endpoints.

Changes:

  • ProgressListeners for downloads. ProgressListeners can be provided in order to monitor the progress of long-running downloads.
  • Custom fields support. Custom fields can be provided when getting info about a file or folder.
  • New Javadoc documentation and guides. The Javadocs for the SDK can now be found on GitHub along with some styling improvements. There are also some new guides on getting started with the SDK.
  • Complete file and folder endpoints. Most operations related to files and folders are now complete. There are still a few other methods (such as getting comments and tasks) which will be implemented when their dependent resource types are implemented.
  • Increased test coverage. Added test coverage reports, full logging for all API requests and responses and fixed some bugs discovered by the new tests.

v0.1.0

27 Oct 20:55
Compare
Choose a tag to compare
v0.1.0 Pre-release
Pre-release

First prerelease of the next iteration of the Java SDK.

Changes:

  • OAuth redesign. OAuth should now be easier to use, allowing you to authenticate with an access token, auth code, or developer token.
  • Automatic rate-limiting and error retry. API requests will automatically be retried with exponential back off if a 500+ (server error) or 429 (too many requests) response code is returned.
  • New EventStream class. This class makes it easier to listen for API events by allowing you to specify listeners that will be notified when an event occurs.
  • New classes for resource types. Managers have been removed in favor of using resource type classes directly. This should make the SDK simpler and more intuitive to use.
  • New classes for making custom API requests. The BoxAPIRequest and BoxAPIResponse classes make it easy to send custom requests to the API while still having OAuth, rate-limiting back off, error handling and response parsing automatically handled.
  • Test suites for running unit and integration tests. Test accounts can be used to run integration tests against the API.