Release Notes#
1.1.0#
1.1.0 Release
1.1.0 GA Released 2023-11-29
The Resource interface includes a
getHeaders()
method, making it possible for clients to access all response headers from remote Web resources. This method is available on all subtypes, includingRDFSource
,NonRDFSource
,SolidRDFSource
,SolidContainer
,SolidNonRDFSource
, and any derived user-defined type.Standard URI normalization is now performed automatically for all resource identifiers; it is now unnecessary to call
URI::normalize
in client code before interacting with SolidClient API methods.An
inrupt-client-spring
module is available to make it easier to integrate Spring applications with the Inrupt Solid Client Libraries. This integration layer includes anasSession(OAuth2User)
method to convert a Spring user object into aSession
object that can be used with these libraries.An
inrupt-client-quarkus
module is available to make it easier to integrate Quarkus applications with the Inrupt Solid Client Libraries. This module includes anasSession(JsonWebToken)
utility method to convert a Microprofile JSON Web Token into aSession
object.
1.0.0#
1.0.0 Release
1.0.0 GA Released 2023-07-17
The first generally available release of Inrupt’s Java Client Libraries include:
Support for mapping Pod resources.
Support for read/write/update/delete (i.e., CRUD) operations on a Solid Pod.
Support for OpenID sessions and Access Grant Sessions
Support for managing access to resources in a Solid Pod using Access Grants.
Inrupt’s Java Client Libraries consist of different modules. For details of the modules, see Introduction.
Pod Resources#
Solid Pods are data storage locations. Both Resource Description
Framework (RDF) resources and non-RDF resources (e.g., .jpg
,
.txt
) can be stored in a Solid Pod.
To support mapping domain specific objects to RDF resources, Inrupt’s Java Client Libraries provides the WrapperIRI class.
To facilitate mapping Pod resources/files, Inrupt’s Java Client Libraries provides the following classes to map to resources:
SolidRDFSource class, which maps to an RDF resource.
SolidContainer class, which maps to a Container.
SolidNonRDFSource class, which maps to a non-RDF resource.
For more information on the classes, see:
For an example, see Getting Started.
CRUD Operations#
To facilitate storing resources/files in a Pod, Inrupt’s Java Client Libraries provides:
SolidClient, the asynchronous client for interacting with Solid resources.
SolidSyncClient, the synchronous client for interacting with Solid resources.
SolidClient and SolidSyncClient provide methods for reading and writing resources to your Solid Pod.
For more information, see
Sessions#
OpenID Sessions#
Inrupt’s Java Client Libraries provide the OpenIdSession class that can work with 3rd party libraries/frameworks that support OpenID Connect and OAuth2 (for example, Spring Security, Quarkus).
In addition, the OpenIdSession class can support client credentials for statically registered single-user application.
For more information, see Sessions.
Access Grant Sessions#
Inrupt’s Java Client Libraries provide AccessGrantSession, which uses an|OpenIdSession| and Access Grant(s) and an OpenID-based session.
For more information, see Sessions.
Access Requests and Grants#
With access requests and grants, a user can request access to resources owned by another user, and the owner user can grant or deny the access request.
To support the access request/grant flow, Inrupt’s Java Client Library provides:
AccessGrantClient, which can be used to create/verify/query/fetch access requests and grants.
AccessGrantSession, which can be used with SolidClient/SolidSyncClient to access resources using the access grant(s).
For more information, see Access Requests and Grants.
Patch Releases and Changelogs#
For patch releases, see Patch Releases.
For changelogs, see Changelog.