Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
qa: apply laminas-coding-standard rules
Signed-off-by: Matthew Weier O'Phinney <[email protected]>
  • Loading branch information
weierophinney committed Jun 10, 2021
commit 15d0afbdca4d07d00e2bdca29b8d08276f9ef0cb
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
/.idea/
/.phpcs-cache
/clover.xml
/coveralls-upload.json
/nbproject/
Expand Down
43 changes: 17 additions & 26 deletions config/module.config.php
Original file line number Diff line number Diff line change
@@ -1,33 +1,29 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger;

use Laminas\ApiTools\Documentation\Controller;

return [
'router' => [
'router' => [
'routes' => [
'api-tools' => [
'child_routes' => [
'swagger' => [
'type' => 'segment',
'options' => [
'type' => 'segment',
'options' => [
'route' => '/swagger',
'defaults' => [
'controller' => SwaggerUi::class,
'action' => 'list',
],
],
'may_terminate' => true,
'child_routes' => [
'child_routes' => [
'api' => [
'type' => 'segment',
'options' => [
'route' => '/:api',
'type' => 'segment',
'options' => [
'route' => '/:api',
'defaults' => [
'action' => 'show',
],
Expand All @@ -40,48 +36,43 @@
],
],
],

'service_manager' => [
'service_manager' => [
// Legacy Zend Framework aliases
'aliases' => [
'aliases' => [
\ZF\Apigility\Documentation\Swagger\SwaggerViewStrategy::class => SwaggerViewStrategy::class,
],
'factories' => [
SwaggerViewStrategy::class => SwaggerViewStrategyFactory::class,
],
],

'controllers' => [
'controllers' => [
// Legacy Zend Framework aliases
'aliases' => [
'aliases' => [
\ZF\Apigility\Documentation\Swagger\SwaggerUi::class => SwaggerUi::class,
],
'factories' => [
SwaggerUi::class => SwaggerUiControllerFactory::class,
],
],

'view_manager' => [
'view_manager' => [
'template_path_stack' => [
'api-tools-documentation-swagger' => __DIR__ . '/../view',
],
],

'asset_manager' => [
'asset_manager' => [
'resolver_configs' => [
'paths' => [
__DIR__ . '/../asset',
],
],
],

'api-tools-content-negotiation' => [
'accept_whitelist' => [
'Laminas\ApiTools\Documentation\Controller' => [
Controller::class => [
0 => 'application/vnd.swagger+json',
],
],
'selectors' => [
'selectors' => [
'Documentation' => [
ViewModel::class => [
'application/vnd.swagger+json',
Expand Down
25 changes: 8 additions & 17 deletions src/Api.php
Original file line number Diff line number Diff line change
@@ -1,25 +1,16 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger;

use Laminas\ApiTools\Documentation\Api as BaseApi;

use function array_merge_recursive;

class Api extends BaseApi
{
/**
* @var BaseApi
*/
/** @var BaseApi */
private $api;

/**
* @param BaseApi $api
*/
public function __construct(BaseApi $api)
{
$this->api = $api;
Expand All @@ -32,15 +23,15 @@ public function toArray()
{
$output = [
'swagger' => '2.0',
'info' => [
'title' => $this->api->getName(),
'version' => (string) $this->api->getVersion()
]
'info' => [
'title' => $this->api->getName(),
'version' => (string) $this->api->getVersion(),
],
];

foreach ($this->api->services as $service) {
$outputService = new Service($service);
$output = array_merge_recursive($output, $outputService->toArray());
$output = array_merge_recursive($output, $outputService->toArray());
}

return $output;
Expand Down
6 changes: 0 additions & 6 deletions src/Exception/ExceptionInterface.php
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Exception;

interface ExceptionInterface
Expand Down
11 changes: 5 additions & 6 deletions src/Exception/UnmatchedTypeException.php
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Exception;

use RuntimeException;

use function get_class;
use function is_object;
use function sprintf;
use function var_export;

class UnmatchedTypeException extends RuntimeException implements ExceptionInterface
{
/**
Expand Down
11 changes: 4 additions & 7 deletions src/Model/ArrayType.php
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use function is_array;

class ArrayType implements TypeInterface
{
/** @var ModelGenerator */
private $modelGenerator;

public function __construct(ModelGenerator $modelGenerator)
Expand All @@ -31,7 +28,7 @@ public function match($target)
public function generate($target)
{
return [
'type' => 'array',
'type' => 'array',
'items' => $this->modelGenerator->generateType($target[0]),
];
}
Expand Down
8 changes: 2 additions & 6 deletions src/Model/BooleanType.php
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use function is_bool;

class BooleanType implements TypeInterface
{
/**
Expand Down
8 changes: 2 additions & 6 deletions src/Model/IntegerType.php
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use function is_int;

class IntegerType implements TypeInterface
{
/**
Expand Down
25 changes: 16 additions & 9 deletions src/Model/ModelGenerator.php
Original file line number Diff line number Diff line change
@@ -1,17 +1,25 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use Laminas\ApiTools\Documentation\Swagger\Exception\UnmatchedTypeException;

use function array_merge;
use function json_decode;

class ModelGenerator
{
/**
* @var array
* @psalm-var array{
* 0: ObjectType,
* 1: NumberType,
* 2: IntegerType,
* 3: StringType,
* 4: BooleanType,
* 5: ArrayType
* }
*/
private $types;

public function __construct()
Expand All @@ -29,8 +37,7 @@ public function __construct()
/**
* @param string $jsonInput
* @return array
* @throws UnmatchedTypeException if unable to match any given $target to a
* known type.
* @throws UnmatchedTypeException If unable to match any given $target to a known type.
*/
public function generate($jsonInput)
{
Expand All @@ -49,7 +56,7 @@ public function generate($jsonInput)
/**
* @param mixed $target
* @return TypeInterface
* @throws UnmatchedTypeException if unable to match $target to a known type.
* @throws UnmatchedTypeException If unable to match $target to a known type.
*/
public function generateType($target)
{
Expand Down
8 changes: 2 additions & 6 deletions src/Model/NumberType.php
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use function is_float;

class NumberType implements TypeInterface
{
/**
Expand Down
21 changes: 11 additions & 10 deletions src/Model/ObjectType.php
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use Laminas\ApiTools\Documentation\Swagger\Exception\UnmatchedTypeException;

use function array_keys;
use function array_merge;
use function array_reduce;
use function get_object_vars;
use function is_object;

class ObjectType implements TypeInterface
{
/** @var ModelGenerator */
private $modelGenerator;

public function __construct(ModelGenerator $modelGenerator)
Expand All @@ -29,13 +30,13 @@ public function match($target)

/**
* {@inheritDoc}
* @throws UnmatchedTypeException if any given property cannot be resolved
* to a known type.
*
* @throws UnmatchedTypeException If any given property cannot be resolved to a known type.
*/
public function generate($target)
{
return [
'type' => 'object',
'type' => 'object',
'properties' => array_reduce(
array_keys(get_object_vars($target)),
function ($types, $key) use ($target) {
Expand All @@ -45,7 +46,7 @@ function ($types, $key) use ($target) {
);
},
[]
)
),
];
}
}
8 changes: 2 additions & 6 deletions src/Model/StringType.php
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

use function is_string;

class StringType implements TypeInterface
{
/**
Expand Down
6 changes: 0 additions & 6 deletions src/Model/TypeInterface.php
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
<?php

/**
* @see https://github.com/laminas-api-tools/api-tools-documentation-swagger for the canonical source repository
* @copyright https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/COPYRIGHT.md
* @license https://github.com/laminas-api-tools/api-tools-documentation-swagger/blob/master/LICENSE.md New BSD License
*/

namespace Laminas\ApiTools\Documentation\Swagger\Model;

interface TypeInterface
Expand Down
Loading