forked from GNUsocial/gnu-social
.. | ||
src/Metadata | ||
tests | ||
.gitignore | ||
.travis.yml | ||
CHANGELOG.md | ||
composer.json | ||
composer.lock | ||
LICENSE | ||
phpunit.xml.dist | ||
README.rst |
Metadata is a library for class/method/property metadata management in PHP ========================================================================== Overview -------- This library provides some commonly needed base classes for managing metadata for classes, methods and properties. The metadata can come from many different sources (annotations, YAML/XML/PHP configuration files). The metadata classes are used to abstract away that source and provide a common interface for all of them. Usage ----- The library provides three classes that you can extend to add your application specific properties, and flags: ``ClassMetadata``, ``MethodMetadata``, and ``PropertyMetadata`` After you have added, your properties in sub-classes, you also need to add ``DriverInterface`` implementations which know how to populate these classes from the different metadata sources. Finally, you can use the ``MetadataFactory`` to retrieve the metadata:: <?php use Metadata\MetadataFactory; use Metadata\Driver\DriverChain; $driver = new DriverChain(array( /** Annotation, YAML, XML, PHP, ... drivers */ )); $factory = new MetadataFactory($driver); $metadata = $factory->getMetadataForClass('MyNamespace\MyObject');