Version 1.0.3 released

This release adds a new property type choice which allows to define an schema property which allows different kind of objects. Also the handling for incoming and outgoing data was unified. In the following the changelog

  • Added new ChoiceType property which allows different kinds of objects as value

    Property which allows different kind of complex types. It uses the JsonSchema "oneOf" and XSD "choice" element to generate the fitting schema definition.

  • Use same logic for traversing incoming and outgoing data

    For parsing incoming and outgoing data we had in some places the same code which essentially goes recursively through an schema and makes an specific action on an value. We have created a schema traverser class which unifies this traversing through the schema. It is possible to add visitor classes which can act on the values.

  • Moved schema property methods assimilate and validate into seperate class

    Because of the traversing class we could remove the assimilate and validate methods from each property and add proper visitor implementations.

  • Improved record factory factory class which uses now the object build to get arbitrary dependencies

    Inside an record factory it is now possible to define dependencies through an @Inject annotation.

  • Implemented factory to convert requests into PSR-7 objects and vice versa

    We have added an factory class to convert PSX http objects into PSR-7 objects. Therefor we use the zend-diactoros PSR-7 implementation.

  • Improved many test cases

    Many test cases were extended and improved. Especially the property schema and controller schema api test cases.