Skip to content

🪐 v0.5.1: add `Inspector.verifyWrapperChainContracts` method ⚖️💗

Compare
Choose a tag to compare
@oldratlee oldratlee released this 30 Mar 13:44
· 31 commits to main since this release

inspectable-wrappers

The purpose of Inspectable Wrappers is to provide a standard for wrapper chain with the inspection ability.

  • The specification interfaces:
    • Wrapper interface is used to
      be implemented by wrapper classes, make an inspectable wrapper chain(linked list)
    • Attachable interface is used to
      enhance the wrapper instances with the attachment storage ability
    • WrapperAdapter interface is used to
      adapt an existed wrapper instance to type Wrapper without modifying it
  • The Inspector class is used to inspect the wrapper chain

Note

Thanks to inspirational discussions from @zavakid about Inspector and WrapperAdapter 💕🫡

☘️ Features

🛠️ Refactor

  • rename the methods of Inspector 🔠

Note

Note about usage and method naming of Inspector:

  • All method names contain the word "wrapper chain",
    so the usage code is easily recognizable as related to inspectable wrappers.
  • Because the method names are long and informative,
    it's recommended to static import these methods.

📚 Documentation/Test

  • add wrapper chain graph to the javadoc ⛓️
  • refactor the demo ExistedExecutorWrapper implementation, without leak its underlying executor field
  • improve docs/javadoc 📚

🍼 Java API Doc

https://foldright.io/inspectable-wrappers/apidocs/0.5.1/index.html

🍪 Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>inspectable-wrappers</artifactId>
    <version>0.5.1</version>
</dependency>