wedocreatives / wrike-php-jmsserializer
Response transformer adapter for Wrike PHP Library, based on JMS Serializer package.
v2.0.0
2019-07-03 11:01 UTC
Requires
- php: >=5.5,<7.2
- jms/serializer: ^1.4
- wedocreatives/wrike-php-library: ^1.0
Requires (Dev)
- phpunit/phpunit: >=4.0,<6.0
README
Introduction
This is response transformer plugin for Wrike PHP Library.
- For general purpose please check full configured Wrike PHP SDK.
- For Symfony Framework please check full configured Wrike bundle.
- For none standard purposes please check generic Wrike PHP Library.
Versions
Project status
General
Branch 'master'
Installation
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
$ composer require wedocreatives/wrike-php-jmsserializer "^1.0"
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Contribution
To try it yourself clone the repository:
git clone git@github.com:wedocreatives/wrike-php-jmsserializer.git
cd wrike-php-jmsserializer
and install dependencies with composer:
composer install
Run PHPUnit tests:
./vendor/bin/phpunit
Usage
All \GuzzleHttp\Client methods plus methods for \wedocreatives\WrikePhpLibrary\Client\ClientInterface.
/** * Standard usage */ $serializer = SerializerFactory::create(); // \JMS\Serializer\SerializerInterface
$resourceModelTransformer = TransformerFactory::createResourceModelTransformer($serializer); /** * @param ResponseInterface $response * @param string $resourceClass * * @return ResourceModelInterface */ $result = $resourceModelTransformer->transform($response, $resourceClass); $result => [ <ResourceModelInterface>, <ResourceModelInterface>, ... ]
$responseModelTransformer = TransformerFactory::createResponseModelTransformer($serializer); /** * @param ResponseInterface $response * @param string $resourceClass * * @return ResponseModelInterface */ $result = $responseModelTransformer->transform($response, $resourceClass); $result => ResponseModelInterface { kind: <ResponseType>; data: [ <ResourceModelInterface>, <ResourceModelInterface>, ... ] }
Reference
License
This bundle is available under the MIT license.