Skip to content

0.4: Merge pull request #32 from OleksandrKucherenko/merged-updates

Compare
Choose a tag to compare
@OleksandrKucherenko OleksandrKucherenko released this 23 Jun 14:52
4a10d33

The New Version of the library is just released! Welcome to version 0.4!

What is it? AutoProxy is a java annotation processing library inspired by Google AutoValue library. Its main purpose is to generate wrapper around the existing interface or abstract class. (works for Kotlin classes too!)

Why I should use it? Several cases are in use right now:

  1. make detachable implementations, when needed to redirect calls to NoOp (No Operation) code without other modules failure.
  2. act as a proxy in call and provide developer easy interface to inject side effects. Example: log all calls and parameters of calls
  3. Class Stubs/Fakes generation (mocks vs fakes)
  4. Late initialization, when all calls are recorded by proxy, and when instance become available, replay them all on it.

Changes:

  • method names generated as @stringdef annotation, that allows verifying usage of constants in IDE (andoridx.annotations). No place to mistakes!
  • added "create" static method that simplifies the creation of proxy class instance with lambda injection.
  • added "dispatchByName" method that simplifies call of inner methods inside the predicate's
  • added flags that allow forcing generation of the helper methods
  • incremental annotation processing