Skip to content

v0.0.6

Choose a tag to compare

@m0nk3y2k4 m0nk3y2k4 released this 16 Jun 20:52
· 310 commits to master since this release

0.0.6 - 2020-06-16

Added

  • Remote API requests now include the API version to be used.
  • Enum for the different HTTP request methods.
  • Mapping for the /search/series routes JSONs data.image property.
  • Introduced new wrapper for some common @FunctionalInterface interfaces which allow a specific exception to be thrown during their execution.
  • New util class Preconditions that can be used to check certain requirements before executing some specific code.
  • Util methods in APIUtil for creating a more readable String-representation for Lists and Optionals.
  • Some more jsr305 annotations.
  • New constant for slug query parameter in Query parameters class.
  • Some additional JavaDoc.

Changed

  • Method APIUtil.prettyPrint(JsonNode) now throws a more specific JsonProcessingException.
  • Small refactoring of API response JSON deserialization.
  • APINotAuthorizedException is now a sub-type of APICommunicationException.
  • Re-enabled doclint setting in the JavaDoc maven plugin and added some configuration on how the output should look like.
  • Full refactoring of method parameter and precondition checks. Removed many of the specific validator classes and consolidated parts of their functionality into two classes: Parameters and Preconditions.
  • In order to reduce boilerplate code, the hardcoded API data model implementations have been replaced by some auto-generated code based on the Immutables library.
  • Methods in APIUtil now return primitive boolean values.
  • Converted some validators to java.util.function.Predicate. Changed corresponding method signatures.
  • Changed class name suffix for API data model implementations.

Fixed

  • Fixed some unpleasant JavaDoc formatting.

Removed

  • Removed QueryResource.createQueryResource(String, QueryParameters) method.
  • Removed APIValidationException class. Replaced by the new APIPreconditionException and java.lang.IllegalArgumentException.
  • ConnectionValidator has been removed. Its functionality has been relocated into Preconditions class.
  • Functionality of PathValidator, QueryValidator and ObjectValidator has been consolidated into the new Parameters class.