All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- Added
ClassRegistryInterface
- Renamed
FactoryRegistry
toClassRegistry
- Updated
Factory\create()
to useClassRegistry
- Updated
Factory\create()
to useStrings\random_unique_classname()
- Made all methods in
AbstractFactory
non-static with exception ofbuild()
, which has not changed getExpectedClassType()
andgetTemplateNamespace()
are no longer static- Added
FactoryRegistry
class to keep track of runtime factories. - Added
Factory\create()
function which enables the creation of factory classes at runtime.
- Added
AbstractFactory::build()
method which accepts the name of the class to instanciate and arguments (packed using the splat operator) to pass to the constructor (viaAbstractFactory::instanciate()
) - Removed
hasSimpleFactoryBuildMethodTrait
- Initial release