Download the PHP package iadvize/php-swaggerize-fastroute-library without Composer
On this page you can find all versions of the php package iadvize/php-swaggerize-fastroute-library. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download iadvize/php-swaggerize-fastroute-library
More information about iadvize/php-swaggerize-fastroute-library
Files in iadvize/php-swaggerize-fastroute-library
Package php-swaggerize-fastroute-library
Short Description A library to automatically create FastRoute routes based on swagger JSON documentation
License
Informations about the package php-swaggerize-fastroute-library
php-swaggerize-fastroute-library

⚠️ WARNING: This repository is deprecated and no longer maintained since 2015. See removal guide here.
A library to automatically create FastRoute routes based on swagger JSON documentation
Removal guide
This library is deprecated and no longer maintained since 2015. Here is a guide to remove it from your project:
- check that your app uses this library
iadvize/php-swaggerize-fastroute-library
(search forIadvize\SwaggerizeFastRoute
package import in php code). If it does not, you can safely remove it from yourcomposer.json
and skip the next steps. - if your CI/CD or dockerfile uses the
swaggerize swagger:scan
command, you should:- run it manually once (use your full existing command, eg:
./vendor/bin/swaggerize swagger:scan storage/docs/definition.json "path/to/controllers" --routeFile somewhere/routeFile.php
) - remove the
swaggerize swagger:scan
command from your CI/CD or dockerfile
- run it manually once (use your full existing command, eg:
- convert the generated route file to a standard FastRoute setup (see FastRoute documentation), usually the same file as the one using the
Iadvize\SwaggerizeFastRoute
package. - remove the
Iadvize\SwaggerizeFastRoute
package import from your php code and all usage. - remove the
iadvize/php-swaggerize-fastroute-library
from yourcomposer.json
(eg:composer remove iadvize/php-swaggerize-fastroute-library
) - delete the routeFile.php file (not needed anymore)
Examples
Generate route File (FastRoute compatible)
Install
To install with composer:
Documentation
Generate route File (FastRoute compatible)
Dispatch generated file or simply use cache
You can then use FastRoute cached dispatcher to use generated file or directly use a cache dispatcher (file will be generated at first call).
Alternatively to generate routes, you can simply cache first parse by setting 'cacheEnabled' => true
in addRoute function.
Apply this to Lumen application
To use this swagger routes in a Lumen Application (which use FastRoute as route library), you need to extends Laravel\Lumen\Application
and override createDispatcher
method.
How handler is formed
Handlers are formed from route defined in swagger as Lumen define it for controller class : Controller@method
Controller class generation
Controller class is determined from path route with first character uppercased and with Controller at the end of file name
This swagger JSON :
will generates respectively this handlers:
PetsController@get
PetsController@update
StoreController@create
Method generation
Controller method is mapped from HTTP method :
GET
=>get
,POST
=>create
,PUT
=>update
,HEAD
=>head
,OPTIONS
=>options
,PATCH
=>patch
,DELETE
=>delete
,
Contribute
Look at contribution guidelines here : CONTRIBUTING.md
All versions of php-swaggerize-fastroute-library with dependencies
nikic/fast-route Version 0.*
thefrozenfire/swagger Version ^2.0
symfony/console Version ^2.7