Releases: restfulapi/restful-api
1.9.0
Modify RestfulApiController to invalidate the session after the completion of each REST method as part of an overall solution to an application performance issue when not caching the database connection.
Allow service name to be specified at the representation level - list requests only - so that a single service can be used for multiple resources when the underlying functionality is the same (ex: bulk list requests using alternate representations).
1.8.0
Replace overrideVersionRangeMediaType=true setting with useHighestSemanticVersion=true to dynamically replace all versioned media types with the highest semantic version where the major version matches. This is to facilitate easier caller adoption of non-breaking API changes. This feature requires an ApiVersionParser to be configured.
Add setting useAcceptHeaderAsMediaTypeHeader=true in Config.groovy to return the Accept request header as the X-Media-Type response header for some callers to delay transitioning to full semantic versioning of the X-Media-Type response header.
1.7.0
Add setting overrideVersionRangeMediaType=true to allow override of a whole digit representation version number with the highest semantic version where the major version matches. This is in support of version ranges that facilitate easier caller adoption of non-breaking API changes. This feature requires an ApiVersionParser to be configured.
Correct extensibility to not execute WRITE SQL if the request is a POST /qapi request (this represents a query by post read-only request).
1.6.0
Add support for specifying optional metadata at the representation level of a resource definition.
Add feature that can parse the media types of resource representations to produce an ApiVersion object that can be associated with each representation. Generic media types (ex: application/json) can then be assigned the highest ApiVersion from the list of media types in that same resource representation. The media type header in the response can then be overwritten with the highest versioned media type. The ApiVersionParser is a bean specific to a restful-api application. BasicApiVersion and BasicApiVersionParser classes are provided as reference implementations.
1.5.0
Enhance PagedResultArrayList to allow the creation of the class omitting the total count. When there is no total count specified, TOTAL_COUNT will be omitted from the response. This is typically used only when the count method is not performant, and TOTAL_COUNT is not needed by any calling application.
1.4.0
1.3.0
1.2.0
Add feature that can force marshallers to remove null fields without having to specify it for each marshaller.
Add feature that can force marshallers to remove empty collections (only when the marshaller is also configured to remove null fields)
Add feature that can perform content filtering of JSON/XML request and response content.