@@ -45,11 +45,11 @@ discard block |
||
45 | 45 | ): GroupInterface { |
46 | 46 | assert(class_exists($controllerClass) === true); |
47 | 47 | |
48 | - $indexSlug = '/{' . CI::ROUTE_KEY_INDEX . '}'; |
|
49 | - $params = function ($method) use ($resourceName) { |
|
50 | - return [RouteInterface::PARAM_NAME => $resourceName . '_' . $method]; |
|
48 | + $indexSlug = '/{'.CI::ROUTE_KEY_INDEX.'}'; |
|
49 | + $params = function($method) use ($resourceName) { |
|
50 | + return [RouteInterface::PARAM_NAME => $resourceName.'_'.$method]; |
|
51 | 51 | }; |
52 | - $handler = function ($method) use ($controllerClass) { |
|
52 | + $handler = function($method) use ($controllerClass) { |
|
53 | 53 | return [$controllerClass, $method]; |
54 | 54 | }; |
55 | 55 | |
@@ -62,13 +62,13 @@ discard block |
||
62 | 62 | $group->post($resourceName, $handler(CI::METHOD_CREATE), $params(CI::METHOD_CREATE)); |
63 | 63 | } |
64 | 64 | if (in_array(ControllerReadInterface::class, $classInterfaces) === true) { |
65 | - $group->get($resourceName . $indexSlug, $handler(CI::METHOD_READ), $params(CI::METHOD_READ)); |
|
65 | + $group->get($resourceName.$indexSlug, $handler(CI::METHOD_READ), $params(CI::METHOD_READ)); |
|
66 | 66 | } |
67 | 67 | if (in_array(ControllerUpdateInterface::class, $classInterfaces) === true) { |
68 | - $group->patch($resourceName . $indexSlug, $handler(CI::METHOD_UPDATE), $params(CI::METHOD_UPDATE)); |
|
68 | + $group->patch($resourceName.$indexSlug, $handler(CI::METHOD_UPDATE), $params(CI::METHOD_UPDATE)); |
|
69 | 69 | } |
70 | 70 | if (in_array(ControllerDeleteInterface::class, $classInterfaces) === true) { |
71 | - $group->delete($resourceName . $indexSlug, $handler(CI::METHOD_DELETE), $params(CI::METHOD_DELETE)); |
|
71 | + $group->delete($resourceName.$indexSlug, $handler(CI::METHOD_DELETE), $params(CI::METHOD_DELETE)); |
|
72 | 72 | } |
73 | 73 | |
74 | 74 | return $group; |
@@ -83,11 +83,11 @@ discard block |
||
83 | 83 | */ |
84 | 84 | protected static function controller(GroupInterface $group, string $subUri, string $controllerClass): GroupInterface |
85 | 85 | { |
86 | - $slugged = $subUri . '/{' . CI::ROUTE_KEY_INDEX . '}'; |
|
87 | - $params = function ($method) use ($subUri) { |
|
88 | - return [RouteInterface::PARAM_NAME => $subUri . '_' . $method]; |
|
86 | + $slugged = $subUri.'/{'.CI::ROUTE_KEY_INDEX.'}'; |
|
87 | + $params = function($method) use ($subUri) { |
|
88 | + return [RouteInterface::PARAM_NAME => $subUri.'_'.$method]; |
|
89 | 89 | }; |
90 | - $handler = function ($method) use ($controllerClass) { |
|
90 | + $handler = function($method) use ($controllerClass) { |
|
91 | 91 | return [$controllerClass, $method]; |
92 | 92 | }; |
93 | 93 | |
@@ -104,11 +104,11 @@ discard block |
||
104 | 104 | $group->get($slugged, $handler(CI::METHOD_READ), $params(CI::METHOD_READ)); |
105 | 105 | } |
106 | 106 | if (in_array(ControllerUpdateInterface::class, $classInterfaces) === true) { |
107 | - $updateUri = $slugged . '/' . CI::METHOD_UPDATE; |
|
107 | + $updateUri = $slugged.'/'.CI::METHOD_UPDATE; |
|
108 | 108 | $group->post($updateUri, $handler(CI::METHOD_UPDATE), $params(CI::METHOD_UPDATE)); |
109 | 109 | } |
110 | 110 | if (in_array(ControllerDeleteInterface::class, $classInterfaces) === true) { |
111 | - $deleteUri = $slugged . '/' . CI::METHOD_DELETE; |
|
111 | + $deleteUri = $slugged.'/'.CI::METHOD_DELETE; |
|
112 | 112 | $group->post($deleteUri, $handler(CI::METHOD_DELETE), $params(CI::METHOD_DELETE)); |
113 | 113 | } |
114 | 114 | |
@@ -134,13 +134,13 @@ discard block |
||
134 | 134 | /** @var string $controllerClass */ |
135 | 135 | /** @var string $schemaClass */ |
136 | 136 | |
137 | - $resourceIdUri = $resourceName . '/{' . CI::ROUTE_KEY_INDEX . '}/'; |
|
138 | - $selfUri = $resourceIdUri . DocumentInterface::KEYWORD_RELATIONSHIPS . '/' . $relationshipName; |
|
137 | + $resourceIdUri = $resourceName.'/{'.CI::ROUTE_KEY_INDEX.'}/'; |
|
138 | + $selfUri = $resourceIdUri.DocumentInterface::KEYWORD_RELATIONSHIPS.'/'.$relationshipName; |
|
139 | 139 | |
140 | 140 | return $group |
141 | 141 | // `self` |
142 | 142 | ->get($selfUri, [$controllerClass, $selfGetMethod]) |
143 | 143 | // `related` |
144 | - ->get($resourceIdUri . $relationshipName, [$controllerClass, $selfGetMethod]); |
|
144 | + ->get($resourceIdUri.$relationshipName, [$controllerClass, $selfGetMethod]); |
|
145 | 145 | } |
146 | 146 | } |
@@ -246,7 +246,7 @@ discard block |
||
246 | 246 | public function getMappedIncludes(): iterable |
247 | 247 | { |
248 | 248 | $fromSchema = $this->getRootSchema(); |
249 | - $getMappedRelLinks = function (iterable $links) use ($fromSchema) : iterable { |
|
249 | + $getMappedRelLinks = function(iterable $links) use ($fromSchema) : iterable { |
|
250 | 250 | foreach ($links as $link) { |
251 | 251 | assert(is_string($link)); |
252 | 252 | $fromSchemaClass = get_class($fromSchema); |
@@ -296,14 +296,14 @@ discard block |
||
296 | 296 | // ['rel2_name1', ], |
297 | 297 | // ['rel3_name1', 'rel3_name2', 'rel3_name3', ], |
298 | 298 | // ] |
299 | - $includeAsModelNames = function (iterable $relationships): iterable { |
|
299 | + $includeAsModelNames = function(iterable $relationships): iterable { |
|
300 | 300 | foreach ($relationships as $relationship) { |
301 | 301 | assert($relationship instanceof RelationshipInterface); |
302 | 302 | yield $relationship->getNameInModel(); |
303 | 303 | } |
304 | 304 | }; |
305 | 305 | $mappedIncludes = $this->getMappedIncludes(); |
306 | - $getIncludes = function () use ($mappedIncludes, $includeAsModelNames) : iterable { |
|
306 | + $getIncludes = function() use ($mappedIncludes, $includeAsModelNames) : iterable { |
|
307 | 307 | foreach ($mappedIncludes as $relationships) { |
308 | 308 | yield $includeAsModelNames($relationships); |
309 | 309 | } |
@@ -689,7 +689,7 @@ discard block |
||
689 | 689 | $classAtPath = new ArrayObject(); |
690 | 690 | $idsAtPath = new ArrayObject(); |
691 | 691 | |
692 | - $registerModelAtRoot = function ($model) use ($modelStorage, $modelsAtPath, $idsAtPath): void { |
|
692 | + $registerModelAtRoot = function($model) use ($modelStorage, $modelsAtPath, $idsAtPath): void { |
|
693 | 693 | self::registerModelAtPath( |
694 | 694 | $model, |
695 | 695 | static::ROOT_PATH, |
@@ -777,7 +777,7 @@ discard block |
||
777 | 777 | assert(is_string($pathPiece)); |
778 | 778 | $parent = $tmpPath; |
779 | 779 | $tmpPath = empty($tmpPath) === true ? |
780 | - $pathPiece : $tmpPath . static::PATH_SEPARATOR . $pathPiece; |
|
780 | + $pathPiece : $tmpPath.static::PATH_SEPARATOR.$pathPiece; |
|
781 | 781 | $normalizedPaths[$tmpPath] = [$parent, $pathPiece]; |
782 | 782 | $pathsDepths[$parent] = $parentDepth++; |
783 | 783 | } |
@@ -934,7 +934,7 @@ discard block |
||
934 | 934 | ): ModelQueryBuilder { |
935 | 935 | assert( |
936 | 936 | $this->getModelSchemas()->hasRelationship($this->getModelClass(), $relationshipName), |
937 | - "Relationship `$relationshipName` do not exist in model `" . $this->getModelClass() . '`' |
|
937 | + "Relationship `$relationshipName` do not exist in model `".$this->getModelClass().'`' |
|
938 | 938 | ); |
939 | 939 | |
940 | 940 | // as we read data from a relationship our main table and model would be the table/model in the relationship |
@@ -953,8 +953,7 @@ discard block |
||
953 | 953 | $filters = $this->getFilters(); |
954 | 954 | $sorts = $this->getSorts(); |
955 | 955 | $this->areFiltersWithAnd() ? |
956 | - $builder->addRelationshipFiltersAndSortsWithAnd($reverseRelName, $filters, $sorts) : |
|
957 | - $builder->addRelationshipFiltersAndSortsWithOr($reverseRelName, $filters, $sorts); |
|
956 | + $builder->addRelationshipFiltersAndSortsWithAnd($reverseRelName, $filters, $sorts) : $builder->addRelationshipFiltersAndSortsWithOr($reverseRelName, $filters, $sorts); |
|
958 | 957 | } |
959 | 958 | // ... and the input filters to actual data we select |
960 | 959 | if ($relationshipFilters !== null) { |
@@ -982,7 +981,7 @@ discard block |
||
982 | 981 | ) { |
983 | 982 | assert( |
984 | 983 | $this->getModelSchemas()->hasRelationship($this->getModelClass(), $name), |
985 | - "Relationship `$name` do not exist in model `" . $this->getModelClass() . '`' |
|
984 | + "Relationship `$name` do not exist in model `".$this->getModelClass().'`' |
|
986 | 985 | ); |
987 | 986 | |
988 | 987 | // depending on the relationship type we expect the result to be either single resource or a collection |
@@ -1009,7 +1008,7 @@ discard block |
||
1009 | 1008 | ): array { |
1010 | 1009 | assert( |
1011 | 1010 | $this->getModelSchemas()->hasRelationship($this->getModelClass(), $name), |
1012 | - "Relationship `$name` do not exist in model `" . $this->getModelClass() . '`' |
|
1011 | + "Relationship `$name` do not exist in model `".$this->getModelClass().'`' |
|
1013 | 1012 | ); |
1014 | 1013 | |
1015 | 1014 | // depending on the relationship type we expect the result to be either single resource or a collection |
@@ -1083,7 +1082,7 @@ discard block |
||
1083 | 1082 | |
1084 | 1083 | $this->clearFetchParameters(); |
1085 | 1084 | |
1086 | - return (int)$deleted; |
|
1085 | + return (int) $deleted; |
|
1087 | 1086 | } |
1088 | 1087 | |
1089 | 1088 | /** |
@@ -1097,7 +1096,7 @@ discard block |
||
1097 | 1096 | |
1098 | 1097 | $this->clearFetchParameters(); |
1099 | 1098 | |
1100 | - return (int)$deleted > 0; |
|
1099 | + return (int) $deleted > 0; |
|
1101 | 1100 | } |
1102 | 1101 | |
1103 | 1102 | /** |
@@ -1118,7 +1117,7 @@ discard block |
||
1118 | 1117 | |
1119 | 1118 | $this->clearBuilderParameters()->clearFetchParameters(); |
1120 | 1119 | |
1121 | - $this->inTransaction(function () use ($saveMain, $toMany, &$index) { |
|
1120 | + $this->inTransaction(function() use ($saveMain, $toMany, &$index) { |
|
1122 | 1121 | $saveMain->execute(); |
1123 | 1122 | |
1124 | 1123 | // if no index given will use last insert ID as index |
@@ -1134,7 +1133,7 @@ discard block |
||
1134 | 1133 | ->prepareCreateInToManyRelationship($relationshipName, $index, $secondaryIdBindName) |
1135 | 1134 | ); |
1136 | 1135 | foreach ($secondaryIds as $secondaryId) { |
1137 | - $inserted += (int)$saveToMany->setParameter($secondaryIdBindName, $secondaryId)->execute(); |
|
1136 | + $inserted += (int) $saveToMany->setParameter($secondaryIdBindName, $secondaryId)->execute(); |
|
1138 | 1137 | } |
1139 | 1138 | } |
1140 | 1139 | }); |
@@ -1163,12 +1162,12 @@ discard block |
||
1163 | 1162 | ->createBuilder($this->getModelClass()) |
1164 | 1163 | ->updateModels($allowedChanges) |
1165 | 1164 | ->addFiltersWithAndToTable($filters); |
1166 | - $saveMain = $this->builderSaveResourceOnUpdate($saveMain); |
|
1165 | + $saveMain = $this->builderSaveResourceOnUpdate($saveMain); |
|
1167 | 1166 | $saveMain->getSQL(); // prepare |
1168 | 1167 | |
1169 | 1168 | $this->clearBuilderParameters()->clearFetchParameters(); |
1170 | 1169 | |
1171 | - $this->inTransaction(function () use ($saveMain, $toMany, $index, &$updated) { |
|
1170 | + $this->inTransaction(function() use ($saveMain, $toMany, $index, &$updated) { |
|
1172 | 1171 | $updated = $saveMain->execute(); |
1173 | 1172 | |
1174 | 1173 | foreach ($toMany as $relationshipName => $secondaryIds) { |
@@ -1188,12 +1187,12 @@ discard block |
||
1188 | 1187 | ->prepareCreateInToManyRelationship($relationshipName, $index, $secondaryIdBindName) |
1189 | 1188 | ); |
1190 | 1189 | foreach ($secondaryIds as $secondaryId) { |
1191 | - $updated += (int)$saveToMany->setParameter($secondaryIdBindName, $secondaryId)->execute(); |
|
1190 | + $updated += (int) $saveToMany->setParameter($secondaryIdBindName, $secondaryId)->execute(); |
|
1192 | 1191 | } |
1193 | 1192 | } |
1194 | 1193 | }); |
1195 | 1194 | |
1196 | - return (int)$updated; |
|
1195 | + return (int) $updated; |
|
1197 | 1196 | } |
1198 | 1197 | |
1199 | 1198 | /** |
@@ -1344,7 +1343,7 @@ discard block |
||
1344 | 1343 | { |
1345 | 1344 | $countBuilder = $this->createBuilder($this->getModelClass()); |
1346 | 1345 | $countBuilder->setParameters($builder->getParameters()); |
1347 | - $countBuilder->select('COUNT(*)')->from('(' . $builder->getSQL() . ') AS RESULT'); |
|
1346 | + $countBuilder->select('COUNT(*)')->from('('.$builder->getSQL().') AS RESULT'); |
|
1348 | 1347 | |
1349 | 1348 | return $countBuilder; |
1350 | 1349 | } |
@@ -1555,7 +1554,7 @@ discard block |
||
1555 | 1554 | |
1556 | 1555 | $pkName = $this->getModelSchemas()->getPrimaryKey($parentClass); |
1557 | 1556 | |
1558 | - $registerModelAtPath = function ($model, string $path) use ($deDup, $modelsAtPath, $idsAtPath) { |
|
1557 | + $registerModelAtPath = function($model, string $path) use ($deDup, $modelsAtPath, $idsAtPath) { |
|
1559 | 1558 | return self::registerModelAtPath( |
1560 | 1559 | $model, |
1561 | 1560 | $path, |
@@ -1567,7 +1566,7 @@ discard block |
||
1567 | 1566 | }; |
1568 | 1567 | |
1569 | 1568 | foreach ($childRelationships as $name) { |
1570 | - $childrenPath = $parentsPath !== static::ROOT_PATH ? $parentsPath . static::PATH_SEPARATOR . $name : $name; |
|
1569 | + $childrenPath = $parentsPath !== static::ROOT_PATH ? $parentsPath.static::PATH_SEPARATOR.$name : $name; |
|
1571 | 1570 | |
1572 | 1571 | $relationshipType = $this->getModelSchemas()->getRelationshipType($parentClass, $name); |
1573 | 1572 | list ($targetModelClass, $reverseRelName) = |
@@ -1617,7 +1616,7 @@ discard block |
||
1617 | 1616 | [$pkName => [FilterParameterInterface::OPERATION_EQUALS => [$parent->{$pkName}]]], |
1618 | 1617 | [] |
1619 | 1618 | ); |
1620 | - $children = $this->fetchPaginatedResourcesWithoutRelationships( |
|
1619 | + $children = $this->fetchPaginatedResourcesWithoutRelationships( |
|
1621 | 1620 | $clonedBuilder, |
1622 | 1621 | $clonedBuilder->getModelClass() |
1623 | 1622 | ); |
@@ -48,18 +48,18 @@ discard block |
||
48 | 48 | |
49 | 49 | $container[FactoryInterface::class] = $factory; |
50 | 50 | |
51 | - $container[JsonSchemasInterface::class] = function (PsrContainerInterface $container) use ($factory) { |
|
51 | + $container[JsonSchemasInterface::class] = function(PsrContainerInterface $container) use ($factory) { |
|
52 | 52 | $settings = $container->get(SettingsProviderInterface::class)->get(FluteSettings::class); |
53 | 53 | $modelSchemas = $container->get(ModelSchemaInfoInterface::class); |
54 | 54 | |
55 | 55 | return $factory->createJsonSchemas($settings[FluteSettings::KEY_MODEL_TO_SCHEMA_MAP], $modelSchemas); |
56 | 56 | }; |
57 | 57 | |
58 | - $container[ParametersMapperInterface::class] = function (PsrContainerInterface $container) { |
|
58 | + $container[ParametersMapperInterface::class] = function(PsrContainerInterface $container) { |
|
59 | 59 | return new ParametersMapper($container->get(JsonSchemasInterface::class)); |
60 | 60 | }; |
61 | 61 | |
62 | - $container[EncoderInterface::class] = function (PsrContainerInterface $container) use ($factory) { |
|
62 | + $container[EncoderInterface::class] = function(PsrContainerInterface $container) use ($factory) { |
|
63 | 63 | /** @var JsonSchemasInterface $jsonSchemas */ |
64 | 64 | $jsonSchemas = $container->get(JsonSchemasInterface::class); |
65 | 65 | $settings = $container->get(SettingsProviderInterface::class)->get(FluteSettings::class); |
@@ -74,19 +74,19 @@ discard block |
||
74 | 74 | return $encoder; |
75 | 75 | }; |
76 | 76 | |
77 | - $container[RelationshipPaginationStrategyInterface::class] = function (PsrContainerInterface $container) { |
|
77 | + $container[RelationshipPaginationStrategyInterface::class] = function(PsrContainerInterface $container) { |
|
78 | 78 | $settings = $container->get(SettingsProviderInterface::class)->get(FluteSettings::class); |
79 | 79 | |
80 | 80 | return new BasicRelationshipPaginationStrategy($settings[FluteSettings::KEY_DEFAULT_PAGING_SIZE]); |
81 | 81 | }; |
82 | 82 | |
83 | - $container[JsonApiParserFactoryInterface::class] = function (PsrContainerInterface $container) { |
|
83 | + $container[JsonApiParserFactoryInterface::class] = function(PsrContainerInterface $container) { |
|
84 | 84 | $factory = new JsonApiParserFactory($container); |
85 | 85 | |
86 | 86 | return $factory; |
87 | 87 | }; |
88 | 88 | |
89 | - $container[FormValidatorFactoryInterface::class] = function (PsrContainerInterface $container) { |
|
89 | + $container[FormValidatorFactoryInterface::class] = function(PsrContainerInterface $container) { |
|
90 | 90 | $factory = new FormValidatorFactory($container); |
91 | 91 | |
92 | 92 | return $factory; |
@@ -104,7 +104,7 @@ discard block |
||
104 | 104 | */ |
105 | 105 | public static function configureExceptionHandler(LimoncelloContainerInterface $container) |
106 | 106 | { |
107 | - $container[ThrowableHandlerInterface::class] = function (PsrContainerInterface $container) { |
|
107 | + $container[ThrowableHandlerInterface::class] = function(PsrContainerInterface $container) { |
|
108 | 108 | /** @var CacheSettingsProviderInterface $provider */ |
109 | 109 | $provider = $container->get(CacheSettingsProviderInterface::class); |
110 | 110 | $appConfig = $provider->getApplicationConfiguration(); |
@@ -111,10 +111,10 @@ |
||
111 | 111 | ); |
112 | 112 | assert(empty($jsonQueryValFileMask) === false, "Invalid Query Validators file mask `$jsonQueryValFileMask`."); |
113 | 113 | |
114 | - $schemasPath = $schemasFolder . DIRECTORY_SEPARATOR . $schemasFileMask; |
|
115 | - $jsonDataValPath = $jsonDataValFolder . DIRECTORY_SEPARATOR . $jsonDataValFileMask; |
|
116 | - $formsValidatorsPath = $formsValFolder . DIRECTORY_SEPARATOR . $formsValFileMask; |
|
117 | - $jsonQueryValPath = $jsonQueryValFolder . DIRECTORY_SEPARATOR . $jsonQueryValFileMask; |
|
114 | + $schemasPath = $schemasFolder.DIRECTORY_SEPARATOR.$schemasFileMask; |
|
115 | + $jsonDataValPath = $jsonDataValFolder.DIRECTORY_SEPARATOR.$jsonDataValFileMask; |
|
116 | + $formsValidatorsPath = $formsValFolder.DIRECTORY_SEPARATOR.$formsValFileMask; |
|
117 | + $jsonQueryValPath = $jsonQueryValFolder.DIRECTORY_SEPARATOR.$jsonQueryValFileMask; |
|
118 | 118 | |
119 | 119 | $requireUniqueTypes = $defaults[static::KEY_SCHEMAS_REQUIRE_UNIQUE_TYPES] ?? true; |
120 | 120 |