Skip to content

yakworks/commons

Repository files navigation

CircleCI
Maven Central
9ci
9ci
Open Source

              _.-````'-,_
          ,-'`           `'-.,_
  /)     (\       9ci's       '``-.
 ( ( .,-') )    YakWorks          ```,
  \ '   (_/                         !!
  |       /)           '           !!!
  ^\    ~'            '     !    !!!! 
    !      _/! , !   !  ! !  !   !!!   
    \Y,   |!!!  !  ! !!  !! !!!!!!!
      `!!! !!!! !!  )!!!!!!!!!!!!!
        !!  ! ! \( \(  !!!|/!  |/!
      /_(      /_(/_(    /_(  /_(   

api-messages

org.yakworks:api-messages:<<version>>

  • base library for the simplified MsgKey
  • results and problem objects for classes.

Kotlin is a dependency and is required for messages. groovy is not required unless taking advantage of the traits and the problem api.

api-json

org.yakworks:api-json:<<version>>

  • groovy json converters for Results and Problem api

groovy-json

  • When using groovy's built in json parsing this adds Service Loader that can load groovy.json.JsonGenerator.Converter in other packages.
  • When using Jackson adds module to support groovy better with GStrings see JacksonUtil and ObjectMapperWrapper for how its is setup using findAndRegisterModules

Additions to Groovy's built in JsonGenerator

  • When using groovy's built in json parsing this adds ServiceLoader that can load groovy.json.JsonGenerator.Converter in other packages/jars if META-INF/services has the files setup. see example.
  • Overrides Groovy's DefaultJsonGenerator so static props are not rendered. the default fall through for a POGO or Object rendered static properties, the mods here ignore them by default as we found 90% of the time static are usually helpers and not intended to be rendered. PR's welcome to make it configurable.

Jackson

  • When using Jackson adds module to support groovy better with GStrings out of the box see JacksonUtil and ObjectMapperWrapper for how its is setup using findAndRegisterModules

groovy-commons

groovy based utilities

Developer Notes

Build and Tests

While gradle is the build tool, make and ship-kit is used for consitency across projects and languages for versioning, docs and deployment.

  • run make to see help for the targets

  • run make check to build and run all tests. same as ./gradlew check