@@ -21,15 +21,15 @@ discard block |
||
21 | 21 | */ |
22 | 22 | public function __invoke(ControllerContainer $container, $ann, EntityContainerBuilder $entityBuilder) |
23 | 23 | { |
24 | - if(!$ann->parent || !$ann->parent->parent){ |
|
24 | + if (!$ann->parent || !$ann->parent->parent) { |
|
25 | 25 | Logger::debug("The annotation \"@{$ann->name} {$ann->description}\" of {$container->getClassName()} should be used with parent param/return"); |
26 | 26 | return; |
27 | 27 | } |
28 | 28 | $target = $ann->parent->parent->name; |
29 | 29 | $route = $container->getRoute($target); |
30 | - if(!$route){ |
|
30 | + if (!$route) { |
|
31 | 31 | Logger::debug("The annotation \"@{$ann->name} {$ann->description}\" of {$container->getClassName()}::$target should be used with parent param/return"); |
32 | - return ; |
|
32 | + return; |
|
33 | 33 | } |
34 | 34 | |
35 | 35 | $params = new AnnotationParams($ann->description, 2); |
@@ -38,20 +38,20 @@ discard block |
||
38 | 38 | |
39 | 39 | $handler = $route->getResponseHandler(); |
40 | 40 | |
41 | - if ($ann->parent->name == 'return'){ |
|
41 | + if ($ann->parent->name == 'return') { |
|
42 | 42 | list($target, $return) = $handler->getMappingBySource('return'); |
43 | - if($return){ |
|
43 | + if ($return) { |
|
44 | 44 | $handler->eraseMapping($target); |
45 | 45 | $handler->setMapping($params[0], $return); |
46 | 46 | } |
47 | 47 | |
48 | - }elseif($ann->parent->name == 'param'){ |
|
48 | + }elseif ($ann->parent->name == 'param') { |
|
49 | 49 | list($paramType, $paramName, $paramDoc) = ParamAnnotationHandler::getParamInfo($ann->parent->description); |
50 | 50 | |
51 | 51 | $paramMeta = $route->getRequestHandler()->getParamMeta($paramName); |
52 | - if($paramMeta->isPassedByReference){ |
|
52 | + if ($paramMeta->isPassedByReference) { |
|
53 | 53 | list($target, $ori) = $handler->getMappingBySource('params.'.$paramName); |
54 | - if($ori){ |
|
54 | + if ($ori) { |
|
55 | 55 | $handler->eraseMapping($target); |
56 | 56 | } |
57 | 57 | //输出绑定 |
@@ -63,7 +63,7 @@ discard block |
||
63 | 63 | ContainerFactory::create($entityBuilder, $paramMeta->type) |
64 | 64 | ) |
65 | 65 | ); |
66 | - }else{ |
|
66 | + }else { |
|
67 | 67 | $paramMeta->source = $params[0]; |
68 | 68 | } |
69 | 69 | } |
@@ -43,7 +43,7 @@ discard block |
||
43 | 43 | 'DELETE' |
44 | 44 | ]) or \PhpBoot\abort(new AnnotationSyntaxException("unknown method http $httpMethod in {$container->getClassName()}::$target")); |
45 | 45 | //获取方法参数信息 |
46 | - $rfl = new \ReflectionClass($container->getClassName()); |
|
46 | + $rfl = new \ReflectionClass($container->getClassName()); |
|
47 | 47 | $method = $rfl->getMethod($target); |
48 | 48 | $methodParams = $method->getParameters(); |
49 | 49 | |
@@ -68,9 +68,9 @@ discard block |
||
68 | 68 | $routeParser = new Std(); |
69 | 69 | $uri = $params->getParam(1); |
70 | 70 | $info = $routeParser->parse($uri); //0.4和1.0返回值不同, 不兼容 |
71 | - if(isset($info[0])){ |
|
72 | - foreach ($info[0] as $i){ |
|
73 | - if(is_array($i)) { |
|
71 | + if (isset($info[0])) { |
|
72 | + foreach ($info[0] as $i) { |
|
73 | + if (is_array($i)) { |
|
74 | 74 | $route->addPathParam($i[0]); |
75 | 75 | } |
76 | 76 | } |
@@ -79,31 +79,31 @@ discard block |
||
79 | 79 | $hasRefParam = false; |
80 | 80 | //设置参数列表 |
81 | 81 | $paramsMeta = []; |
82 | - foreach ($methodParams as $param){ |
|
82 | + foreach ($methodParams as $param) { |
|
83 | 83 | $paramName = $param->getName(); |
84 | 84 | $source = "request.$paramName"; |
85 | - if($route->hasPathParam($paramName)){ //参数来自路由 |
|
85 | + if ($route->hasPathParam($paramName)) { //参数来自路由 |
|
86 | 86 | $source = "request.$paramName"; |
87 | - }elseif($httpMethod == 'GET'){ |
|
87 | + }elseif ($httpMethod == 'GET') { |
|
88 | 88 | $source = "request.$paramName"; //GET请求显示指定来自query string |
89 | 89 | } |
90 | 90 | $paramClass = $param->getClass(); |
91 | - if($paramClass){ |
|
91 | + if ($paramClass) { |
|
92 | 92 | $paramClass = $paramClass->getName(); |
93 | 93 | } |
94 | 94 | $entityContainer = ContainerFactory::create($entityBuilder, $paramClass); |
95 | 95 | $meta = new ParamMeta($paramName, |
96 | 96 | $source, |
97 | - $paramClass?:'mixed', |
|
97 | + $paramClass ?: 'mixed', |
|
98 | 98 | $param->isOptional(), |
99 | - $param->isOptional()?$param->getDefaultValue():null, |
|
99 | + $param->isOptional() ? $param->getDefaultValue() : null, |
|
100 | 100 | $param->isPassedByReference(), |
101 | 101 | null, |
102 | 102 | '', |
103 | 103 | $entityContainer |
104 | 104 | ); |
105 | 105 | $paramsMeta[] = $meta; |
106 | - if($meta->isPassedByReference){ |
|
106 | + if ($meta->isPassedByReference) { |
|
107 | 107 | $hasRefParam = true; |
108 | 108 | $responseHandler->setMapping('response.content.'.$meta->name, new ReturnMeta( |
109 | 109 | 'params.'.$meta->name, |
@@ -114,16 +114,16 @@ discard block |
||
114 | 114 | } |
115 | 115 | |
116 | 116 | $requestHandler->setParamMetas($paramsMeta); |
117 | - if(!$hasRefParam){ |
|
118 | - $responseHandler->setMapping('response.content', new ReturnMeta('return','mixed','', new MixedTypeContainer())); |
|
119 | - }else{ |
|
117 | + if (!$hasRefParam) { |
|
118 | + $responseHandler->setMapping('response.content', new ReturnMeta('return', 'mixed', '', new MixedTypeContainer())); |
|
119 | + }else { |
|
120 | 120 | //当存在引用参数作为输出时, 默认将 return 数据绑定的到 data 下, 以防止和引用参数作为输出重叠 |
121 | - $responseHandler->setMapping($this->returnTarget, new ReturnMeta('return','mixed','', new MixedTypeContainer())); |
|
121 | + $responseHandler->setMapping($this->returnTarget, new ReturnMeta('return', 'mixed', '', new MixedTypeContainer())); |
|
122 | 122 | } |
123 | 123 | |
124 | 124 | |
125 | 125 | $container->addRoute($target, $route); |
126 | 126 | } |
127 | 127 | |
128 | - public $returnTarget='response.content.data'; |
|
128 | + public $returnTarget = 'response.content.data'; |
|
129 | 129 | } |
130 | 130 | \ No newline at end of file |
@@ -58,7 +58,7 @@ discard block |
||
58 | 58 | $op->description = $route->getDescription(); |
59 | 59 | |
60 | 60 | $op->parameters = $this->getParamsSchema($app, $controller, $action, $route); |
61 | - if($this->hasFileParam($route)){ |
|
61 | + if ($this->hasFileParam($route)) { |
|
62 | 62 | $op->consumes = ['multipart/form-data']; |
63 | 63 | } |
64 | 64 | |
@@ -108,7 +108,7 @@ discard block |
||
108 | 108 | } |
109 | 109 | if (is_array($v) || is_object($v)) { |
110 | 110 | $res[$k] = self::objectToArray($v); |
111 | - } else { |
|
111 | + }else { |
|
112 | 112 | $res[$k] = $v; |
113 | 113 | } |
114 | 114 | } |
@@ -140,21 +140,21 @@ discard block |
||
140 | 140 | //TODO status 重复怎么办 |
141 | 141 | if ($ins instanceof HttpException) { |
142 | 142 | $status = $ins->getStatusCode(); |
143 | - } else { |
|
143 | + }else { |
|
144 | 144 | |
145 | 145 | $status = 500; |
146 | 146 | } |
147 | 147 | if (isset($schemas[$status])) { |
148 | 148 | //$this->warnings[] = "status response $status has been used for $name, $desc"; |
149 | 149 | $res = $schemas[$status]; |
150 | - } else { |
|
150 | + }else { |
|
151 | 151 | $res = new ResponseObject(); |
152 | 152 | } |
153 | 153 | $shortName = self::getShortClassName($name); |
154 | 154 | $desc = "$shortName: $desc"; |
155 | 155 | $res->description = self::implode("\n", [$res->description, $desc]); |
156 | 156 | $error = $app->get(ExceptionRenderer::class)->render($ins)->getContent(); |
157 | - if($error){ |
|
157 | + if ($error) { |
|
158 | 158 | $res->examples = [$shortName => $error]; |
159 | 159 | } |
160 | 160 | //$res->schema = new RefSchemaObject("#/definitions/$name"); |
@@ -213,9 +213,9 @@ discard block |
||
213 | 213 | { |
214 | 214 | if ($content instanceof ReturnMeta || $content instanceof ParamMeta) { |
215 | 215 | return $this->makeExample($content->container); |
216 | - }elseif ($content instanceof TypeContainerInterface){ |
|
216 | + }elseif ($content instanceof TypeContainerInterface) { |
|
217 | 217 | return $content->makeExample(); |
218 | - }elseif(is_array($content)) { |
|
218 | + }elseif (is_array($content)) { |
|
219 | 219 | $res = []; |
220 | 220 | foreach ($content as $k => $v) { |
221 | 221 | $res[$k] = $this->makeExample($v); |
@@ -240,7 +240,7 @@ discard block |
||
240 | 240 | array $arr, $suffix) |
241 | 241 | { |
242 | 242 | $className = self::getShortClassName($controller->getClassName()); |
243 | - $name = $className . ucfirst($action) . $suffix; |
|
243 | + $name = $className.ucfirst($action).$suffix; |
|
244 | 244 | |
245 | 245 | $schema = new SimpleModelSchemaObject(); |
246 | 246 | |
@@ -258,7 +258,7 @@ discard block |
||
258 | 258 | } elseif ($v->container instanceof EntityContainer) { |
259 | 259 | $sub = $this->getRefSchema($app, $controller, $action, $route, $v->container); |
260 | 260 | //TODO array for validation |
261 | - } else { |
|
261 | + }else { |
|
262 | 262 | $sub = new PrimitiveSchemaObject(); |
263 | 263 | $sub->type = self::mapType($v->type); |
264 | 264 | self::mapValidation($v->validation, $sub); |
@@ -270,14 +270,14 @@ discard block |
||
270 | 270 | $schema->required[] = $k; |
271 | 271 | } |
272 | 272 | $schema->properties[$k] = $sub; |
273 | - } else { |
|
273 | + }else { |
|
274 | 274 | //TODO how to do? |
275 | 275 | } |
276 | 276 | } |
277 | 277 | $unused = $name; |
278 | 278 | $tempId = 0; |
279 | 279 | while (isset($this->definitions[$unused])) { |
280 | - $unused = $name . $tempId; |
|
280 | + $unused = $name.$tempId; |
|
281 | 281 | $tempId++; |
282 | 282 | } |
283 | 283 | $this->definitions[$unused] = $schema; |
@@ -316,7 +316,7 @@ discard block |
||
316 | 316 | $in = 'query'; |
317 | 317 | |
318 | 318 | $bodyType = 'body'; // 当有文件上传时, 必须是formData方式 |
319 | - if($this->hasFileParam($route)){ |
|
319 | + if ($this->hasFileParam($route)) { |
|
320 | 320 | $bodyType = 'formData'; |
321 | 321 | } |
322 | 322 | |
@@ -355,7 +355,7 @@ discard block |
||
355 | 355 | || $route->getMethod() == 'PATCH' |
356 | 356 | ) { |
357 | 357 | $in = $bodyType; |
358 | - } else { |
|
358 | + }else { |
|
359 | 359 | $in = 'query'; |
360 | 360 | } |
361 | 361 | } |
@@ -366,11 +366,11 @@ discard block |
||
366 | 366 | } elseif ($param->container instanceof EntityContainer) { |
367 | 367 | $paramSchema = $this->getRefSchema($app, $controller, $action, $route, $param->container); |
368 | 368 | //TODO array for validation |
369 | - } else { |
|
369 | + }else { |
|
370 | 370 | $paramSchema = new PrimitiveSchemaObject(); |
371 | - if($isFile){ |
|
371 | + if ($isFile) { |
|
372 | 372 | $paramSchema->type = 'file'; |
373 | - }else{ |
|
373 | + }else { |
|
374 | 374 | $paramSchema->type = self::mapType($param->type); |
375 | 375 | self::mapValidation($param->validation, $paramSchema); |
376 | 376 | } |
@@ -382,10 +382,10 @@ discard block |
||
382 | 382 | $paramSchema->default = $param->default; |
383 | 383 | $paramSchema->required = !$param->isOptional; |
384 | 384 | $parameters[] = $paramSchema; |
385 | - } else { |
|
385 | + }else { |
|
386 | 386 | if (!$name) { |
387 | 387 | $body = $param; |
388 | - } else { |
|
388 | + }else { |
|
389 | 389 | ArrayHelper::set($body, $name, $param); |
390 | 390 | } |
391 | 391 | |
@@ -398,7 +398,7 @@ discard block |
||
398 | 398 | $paramSchema->in = 'body'; |
399 | 399 | if (is_array($body)) { |
400 | 400 | $paramSchema->schema = $this->makeTempSchema($app, $controller, $action, $route, $body, 'Req'); |
401 | - } else { |
|
401 | + }else { |
|
402 | 402 | $paramSchema->schema = $this->getAnySchema($app, $controller, $action, $route, $body->container); |
403 | 403 | } |
404 | 404 | |
@@ -425,8 +425,8 @@ discard block |
||
425 | 425 | } elseif ($container instanceof ScalarTypeContainer) { |
426 | 426 | $schema = new PrimitiveSchemaObject(); |
427 | 427 | $schema->type = self::mapType($container->getType()); |
428 | - } elseif($container == null){ |
|
429 | - $schema = null ;//new PrimitiveSchemaObject(); |
|
428 | + } elseif ($container == null) { |
|
429 | + $schema = null; //new PrimitiveSchemaObject(); |
|
430 | 430 | //$schema->type = null; |
431 | 431 | }else { |
432 | 432 | $schema = new PrimitiveSchemaObject(); |
@@ -458,7 +458,7 @@ discard block |
||
458 | 458 | } elseif ($itemContainer instanceof ScalarTypeContainer) { |
459 | 459 | $itemSchema = new PrimitiveSchemaObject(); |
460 | 460 | $itemSchema->type = self::mapType($itemContainer->getType()); |
461 | - } else { |
|
461 | + }else { |
|
462 | 462 | $itemSchema = new PrimitiveSchemaObject(); |
463 | 463 | //$itemSchema->type = 'mixed'; |
464 | 464 | } |
@@ -484,7 +484,7 @@ discard block |
||
484 | 484 | $propertySchema = $this->getRefSchema($app, $controller, $action, $route, $property->container); |
485 | 485 | } elseif ($property->container instanceof ArrayContainer) { |
486 | 486 | $propertySchema = $this->getArraySchema($app, $controller, $action, $route, $property->container); |
487 | - } else { |
|
487 | + }else { |
|
488 | 488 | $propertySchema = new PrimitiveSchemaObject(); |
489 | 489 | $propertySchema->type = self::mapType($property->type); |
490 | 490 | $propertySchema->description = self::implode("\n", [$property->summary, $property->description]); |
@@ -501,7 +501,7 @@ discard block |
||
501 | 501 | { |
502 | 502 | $params = $route->getRequestHandler()->getParamMetas(); |
503 | 503 | foreach ($params as $name => $param) { |
504 | - if(strpos($param->source, 'request.files.')===0){ |
|
504 | + if (strpos($param->source, 'request.files.') === 0) { |
|
505 | 505 | return true; |
506 | 506 | } |
507 | 507 | } |
@@ -514,7 +514,7 @@ discard block |
||
514 | 514 | */ |
515 | 515 | static public function mapValidation($v, PrimitiveSchemaObject $schemaObject) |
516 | 516 | { |
517 | - if(!$v){ |
|
517 | + if (!$v) { |
|
518 | 518 | return $schemaObject; |
519 | 519 | } |
520 | 520 | $rules = explode('|', $v); |
@@ -530,15 +530,15 @@ discard block |
||
530 | 530 | } elseif ($rule == 'lengthBetween' && isset($params[0]) && isset($params[1])) { |
531 | 531 | $schemaObject->minLength = intval($params[0]); |
532 | 532 | $schemaObject->maxLength = intval($params[1]); |
533 | - } elseif ($rule == 'lengthMin'&& isset($params[0])) { |
|
533 | + } elseif ($rule == 'lengthMin' && isset($params[0])) { |
|
534 | 534 | $schemaObject->minLength = intval($params[0]); |
535 | - } elseif ($rule == 'lengthMax'&& isset($params[0])) { |
|
535 | + } elseif ($rule == 'lengthMax' && isset($params[0])) { |
|
536 | 536 | $schemaObject->maxLength = intval($params[0]); |
537 | - } elseif ($rule == 'min'&& isset($params[0])) { |
|
537 | + } elseif ($rule == 'min' && isset($params[0])) { |
|
538 | 538 | $schemaObject->minimum = floatval($params[0]); |
539 | - } elseif ($rule == 'max'&& isset($params[0])) { |
|
539 | + } elseif ($rule == 'max' && isset($params[0])) { |
|
540 | 540 | $schemaObject->maximum = floatval($params[0]); |
541 | - } elseif ($rule == 'regex'&& isset($params[0])) { |
|
541 | + } elseif ($rule == 'regex' && isset($params[0])) { |
|
542 | 542 | $schemaObject->pattern = $params[0]; |
543 | 543 | } elseif ($rule == 'optional') { |
544 | 544 | $schemaObject->required = false; |
@@ -577,9 +577,9 @@ discard block |
||
577 | 577 | return $className; |
578 | 578 | } |
579 | 579 | |
580 | - static public function implode($glue , array $pieces ) |
|
580 | + static public function implode($glue, array $pieces) |
|
581 | 581 | { |
582 | - $pieces = array_filter($pieces, function($i){return trim($i) !== '';}); |
|
582 | + $pieces = array_filter($pieces, function($i) {return trim($i) !== ''; }); |
|
583 | 583 | return implode($glue, $pieces); |
584 | 584 | } |
585 | 585 | } |
586 | 586 | \ No newline at end of file |
@@ -15,7 +15,7 @@ discard block |
||
15 | 15 | /** |
16 | 16 | * @param ParamMeta[] $paramMates |
17 | 17 | */ |
18 | - public function __construct(array $paramMates=[]){ |
|
18 | + public function __construct(array $paramMates = []) { |
|
19 | 19 | $this->paramMetas = $paramMates; |
20 | 20 | } |
21 | 21 | |
@@ -26,32 +26,32 @@ discard block |
||
26 | 26 | * @param array $reference |
27 | 27 | * @return void |
28 | 28 | */ |
29 | - public function handle(Application $app, Request $request, array &$params, array &$reference){ |
|
29 | + public function handle(Application $app, Request $request, array &$params, array &$reference) { |
|
30 | 30 | |
31 | 31 | $vld = new Validator(); |
32 | 32 | $req = ['request'=>$request]; |
33 | 33 | $requestArray = new ArrayAdaptor($req); |
34 | 34 | $inputs = []; |
35 | - foreach ($this->paramMetas as $k=>$meta){ |
|
36 | - if($meta->isPassedByReference){ |
|
35 | + foreach ($this->paramMetas as $k=>$meta) { |
|
36 | + if ($meta->isPassedByReference) { |
|
37 | 37 | // param PassedByReference is used to output |
38 | 38 | continue; |
39 | 39 | } |
40 | 40 | $source = \JmesPath\search($meta->source, $requestArray); |
41 | - if ($source !== null){ |
|
41 | + if ($source !== null) { |
|
42 | 42 | $source = ArrayAdaptor::strip($source); |
43 | - if($source instanceof ParameterBag){ |
|
43 | + if ($source instanceof ParameterBag) { |
|
44 | 44 | $source = $source->all(); |
45 | 45 | } |
46 | - if($meta->container){ |
|
46 | + if ($meta->container) { |
|
47 | 47 | $inputs[$meta->name] = $meta->container->make($source); |
48 | - }else{ |
|
48 | + }else { |
|
49 | 49 | $inputs[$meta->name] = $source; |
50 | 50 | } |
51 | - if($meta->validation){ |
|
51 | + if ($meta->validation) { |
|
52 | 52 | $vld->rule($meta->validation, $meta->name); |
53 | 53 | } |
54 | - }else{ |
|
54 | + }else { |
|
55 | 55 | $meta->isOptional or \PhpBoot\abort(new BadRequestHttpException("the parameter \"{$meta->source}\" is missing")); |
56 | 56 | $inputs[$meta->name] = $meta->default; |
57 | 57 | } |
@@ -67,10 +67,10 @@ discard block |
||
67 | 67 | ); |
68 | 68 | |
69 | 69 | $pos = 0; |
70 | - foreach ($this->paramMetas as $meta){ |
|
71 | - if($meta->isPassedByReference){ |
|
70 | + foreach ($this->paramMetas as $meta) { |
|
71 | + if ($meta->isPassedByReference) { |
|
72 | 72 | $params[$pos] = &$reference[$meta->name]; |
73 | - }else{ |
|
73 | + }else { |
|
74 | 74 | $params[$pos] = $inputs[$meta->name]; |
75 | 75 | } |
76 | 76 | $pos++; |
@@ -78,15 +78,15 @@ discard block |
||
78 | 78 | } |
79 | 79 | } |
80 | 80 | |
81 | - public function getParamNames(){ |
|
82 | - return array_map(function($meta){return $meta->name;}, $this->paramMetas); |
|
81 | + public function getParamNames() { |
|
82 | + return array_map(function($meta) {return $meta->name; }, $this->paramMetas); |
|
83 | 83 | } |
84 | 84 | |
85 | 85 | /** |
86 | 86 | * 获取参数列表 |
87 | 87 | * @return ParamMeta[] |
88 | 88 | */ |
89 | - public function getParamMetas(){ |
|
89 | + public function getParamMetas() { |
|
90 | 90 | return $this->paramMetas; |
91 | 91 | } |
92 | 92 | |
@@ -95,9 +95,9 @@ discard block |
||
95 | 95 | * @param $name |
96 | 96 | * @return ParamMeta|null |
97 | 97 | */ |
98 | - public function getParamMeta($name){ |
|
99 | - foreach ($this->paramMetas as $meta){ |
|
100 | - if($meta->name == $name){ |
|
98 | + public function getParamMeta($name) { |
|
99 | + foreach ($this->paramMetas as $meta) { |
|
100 | + if ($meta->name == $name) { |
|
101 | 101 | return $meta; |
102 | 102 | } |
103 | 103 | } |
@@ -13,13 +13,13 @@ discard block |
||
13 | 13 | */ |
14 | 14 | public function __construct(array $threads, callable $waitAll) |
15 | 15 | { |
16 | - foreach ($threads as $thread){ |
|
16 | + foreach ($threads as $thread) { |
|
17 | 17 | $pos = count($this->threadResults); |
18 | - $this->threadResults[] = [null,null]; |
|
19 | - $this->threads[] = function ()use($thread, $pos){ |
|
20 | - try{ |
|
18 | + $this->threadResults[] = [null, null]; |
|
19 | + $this->threads[] = function()use($thread, $pos){ |
|
20 | + try { |
|
21 | 21 | $this->threadResults[$pos][0] = $thread(); |
22 | - }catch (\Exception $e){ |
|
22 | + }catch (\Exception $e) { |
|
23 | 23 | $this->threadResults[$pos][1] = $e; |
24 | 24 | } |
25 | 25 | }; |
@@ -29,25 +29,25 @@ discard block |
||
29 | 29 | |
30 | 30 | public function run() |
31 | 31 | { |
32 | - while ($thread = array_pop($this->threads)){ |
|
32 | + while ($thread = array_pop($this->threads)) { |
|
33 | 33 | $thread(); |
34 | 34 | }; |
35 | 35 | } |
36 | 36 | |
37 | - public function wait($waitAble){ |
|
37 | + public function wait($waitAble) { |
|
38 | 38 | array_push($this->waits, $waitAble); |
39 | 39 | $this->run(); |
40 | 40 | |
41 | - if(count($this->waits)){ |
|
41 | + if (count($this->waits)) { |
|
42 | 42 | $waitAll = $this->waitAll; |
43 | 43 | $this->waitResults = $waitAll($this->waits); |
44 | 44 | $this->waits = []; |
45 | 45 | } |
46 | 46 | |
47 | - $res = array_pop($this->waitResults); |
|
48 | - if(isset($res[1])){ |
|
47 | + $res = array_pop($this->waitResults); |
|
48 | + if (isset($res[1])) { |
|
49 | 49 | \PhpBoot\abort(new RpcException($res['reason'])); |
50 | - }else{ |
|
50 | + }else { |
|
51 | 51 | return $res[0]; |
52 | 52 | } |
53 | 53 | } |
@@ -93,11 +93,11 @@ discard block |
||
93 | 93 | |
94 | 94 | Request::class => \DI\factory([Application::class, 'createRequestFromGlobals']), |
95 | 95 | ]; |
96 | - if(function_exists('apc_fetch')){ |
|
96 | + if (function_exists('apc_fetch')) { |
|
97 | 97 | $default += [ |
98 | 98 | Cache::class => \DI\object(ApcCache::class) |
99 | 99 | ]; |
100 | - }else{ |
|
100 | + }else { |
|
101 | 101 | $default += [ |
102 | 102 | Cache::class => \DI\object(FilesystemCache::class) |
103 | 103 | ->constructorParameter('directory', sys_get_temp_dir()) |
@@ -139,11 +139,11 @@ discard block |
||
139 | 139 | * @param string[] $hooks hook class names |
140 | 140 | * @return void |
141 | 141 | */ |
142 | - public function loadRoutesFromClass($className, $hooks=[]) |
|
142 | + public function loadRoutesFromClass($className, $hooks = []) |
|
143 | 143 | { |
144 | 144 | $cache = new CheckableCache($this->cache); |
145 | 145 | |
146 | - $key = 'loadRoutesFromClass:' . md5(__CLASS__ . ':' . $className); |
|
146 | + $key = 'loadRoutesFromClass:'.md5(__CLASS__.':'.$className); |
|
147 | 147 | $routes = $cache->get($key, $this); |
148 | 148 | |
149 | 149 | $controller = null; |
@@ -160,9 +160,9 @@ discard block |
||
160 | 160 | $this->routes[] = [ |
161 | 161 | $method, |
162 | 162 | $uri, |
163 | - function (Application $app, Request $request) use ($cache, $className, $actionName, $controller) { |
|
163 | + function(Application $app, Request $request) use ($cache, $className, $actionName, $controller) { |
|
164 | 164 | |
165 | - $key = 'loadRoutesFromClass:route:' . md5(__CLASS__ . ':' . $className . ':' . $actionName); |
|
165 | + $key = 'loadRoutesFromClass:route:'.md5(__CLASS__.':'.$className.':'.$actionName); |
|
166 | 166 | |
167 | 167 | $routeInstance = $cache->get($key, $this); |
168 | 168 | if ($routeInstance == $this) { |
@@ -190,11 +190,11 @@ discard block |
||
190 | 190 | * @param string[] $hooks |
191 | 191 | * @return void |
192 | 192 | */ |
193 | - public function loadRoutesFromPath($fromPath, $namespace = '', $hooks=[]) |
|
193 | + public function loadRoutesFromPath($fromPath, $namespace = '', $hooks = []) |
|
194 | 194 | { |
195 | 195 | $dir = @dir($fromPath) or abort("dir $fromPath not exist"); |
196 | 196 | |
197 | - $getEach = function () use ($dir) { |
|
197 | + $getEach = function() use ($dir) { |
|
198 | 198 | $name = $dir->read(); |
199 | 199 | if (!$name) { |
200 | 200 | return $name; |
@@ -206,11 +206,11 @@ discard block |
||
206 | 206 | if ($entry == '.' || $entry == '..') { |
207 | 207 | continue; |
208 | 208 | } |
209 | - $path = $fromPath . '/' . str_replace('\\', '/', $entry); |
|
209 | + $path = $fromPath.'/'.str_replace('\\', '/', $entry); |
|
210 | 210 | if (is_file($path) && substr_compare($entry, '.php', strlen($entry) - 4, 4, true) == 0) { |
211 | - $class_name = $namespace . '\\' . substr($entry, 0, strlen($entry) - 4); |
|
211 | + $class_name = $namespace.'\\'.substr($entry, 0, strlen($entry) - 4); |
|
212 | 212 | $this->loadRoutesFromClass($class_name, $hooks); |
213 | - } else { |
|
213 | + }else { |
|
214 | 214 | //\Log::debug($path.' ignored'); |
215 | 215 | } |
216 | 216 | } |
@@ -223,7 +223,7 @@ discard block |
||
223 | 223 | * @param callable $handler function(Application $app, Request $request):Response |
224 | 224 | * @param string[] $hooks |
225 | 225 | */ |
226 | - public function addRoute($method, $uri, callable $handler, $hooks=[]) |
|
226 | + public function addRoute($method, $uri, callable $handler, $hooks = []) |
|
227 | 227 | { |
228 | 228 | $this->routes[] = [$method, $uri, $handler, $hooks]; |
229 | 229 | } |
@@ -249,7 +249,7 @@ discard block |
||
249 | 249 | { |
250 | 250 | // TODO 把 Route里的异常处理 ExceptionRenderer 移到这里更妥? |
251 | 251 | $renderer = $this->get(ExceptionRenderer::class); |
252 | - try{ |
|
252 | + try { |
|
253 | 253 | if ($request == null) { |
254 | 254 | $request = $this->make(Request::class); |
255 | 255 | } |
@@ -259,7 +259,7 @@ discard block |
||
259 | 259 | } |
260 | 260 | $uri = rawurldecode($uri); |
261 | 261 | |
262 | - $next = function (Request $request)use($uri){ |
|
262 | + $next = function(Request $request)use($uri){ |
|
263 | 263 | $dispatcher = $this->getDispatcher(); |
264 | 264 | $res = $dispatcher->dispatch($request->getMethod(), $uri); |
265 | 265 | if ($res[0] == Dispatcher::FOUND) { |
@@ -268,10 +268,10 @@ discard block |
||
268 | 268 | $request->attributes->add($res[2]); |
269 | 269 | } |
270 | 270 | list($handler, $hooks) = $res[1]; |
271 | - $next = function (Request $request)use($handler){ |
|
271 | + $next = function(Request $request)use($handler){ |
|
272 | 272 | return $handler($this, $request); |
273 | 273 | }; |
274 | - foreach (array_reverse($hooks) as $hookName){ |
|
274 | + foreach (array_reverse($hooks) as $hookName) { |
|
275 | 275 | $next = function($request)use($hookName, $next){ |
276 | 276 | $hook = $this->get($hookName); |
277 | 277 | /**@var $hook HookInterface*/ |
@@ -284,12 +284,12 @@ discard block |
||
284 | 284 | \PhpBoot\abort(new NotFoundHttpException(), [$request->getMethod(), $uri]); |
285 | 285 | } elseif ($res[0] == Dispatcher::METHOD_NOT_ALLOWED) { |
286 | 286 | \PhpBoot\abort(new MethodNotAllowedHttpException($res[1]), [$request->getMethod(), $uri]); |
287 | - } else { |
|
287 | + }else { |
|
288 | 288 | \PhpBoot\abort("unknown dispatch return {$res[0]}"); |
289 | 289 | } |
290 | 290 | }; |
291 | 291 | |
292 | - foreach (array_reverse($this->getGlobalHooks()) as $hookName){ |
|
292 | + foreach (array_reverse($this->getGlobalHooks()) as $hookName) { |
|
293 | 293 | $next = function($request)use($hookName, $next){ |
294 | 294 | $hook = $this->get($hookName); |
295 | 295 | /**@var $hook HookInterface*/ |
@@ -304,7 +304,7 @@ discard block |
||
304 | 304 | } |
305 | 305 | return $response; |
306 | 306 | |
307 | - }catch (\Exception $e){ |
|
307 | + }catch (\Exception $e) { |
|
308 | 308 | $renderer->render($e); |
309 | 309 | } |
310 | 310 |
@@ -21,20 +21,20 @@ discard block |
||
21 | 21 | */ |
22 | 22 | public function __invoke(ControllerContainer $container, $ann, EntityContainerBuilder $entityBuilder) |
23 | 23 | { |
24 | - if(!$ann->parent){ |
|
24 | + if (!$ann->parent) { |
|
25 | 25 | //Logger::debug("The annotation \"@{$ann->name} {$ann->description}\" of {$container->getClassName()} should be used with parent route"); |
26 | 26 | return; |
27 | 27 | } |
28 | 28 | $target = $ann->parent->name; |
29 | 29 | $route = $container->getRoute($target); |
30 | - if(!$route){ |
|
30 | + if (!$route) { |
|
31 | 31 | //Logger::debug("The annotation \"@{$ann->name} {$ann->description}\" of {$container->getClassName()}::$target should be used with parent route"); |
32 | - return ; |
|
32 | + return; |
|
33 | 33 | } |
34 | 34 | |
35 | 35 | $params = new AnnotationParams($ann->description, 2); |
36 | 36 | $type = $doc = null; |
37 | - if(count($params)>0){ |
|
37 | + if (count($params)>0) { |
|
38 | 38 | $type = TypeHint::normalize($params[0], $container->getClassName()); |
39 | 39 | } |
40 | 40 | $doc = $params->getRawParam(1, ''); |
@@ -42,10 +42,10 @@ discard block |
||
42 | 42 | list($_, $meta) = $route |
43 | 43 | ->getResponseHandler() |
44 | 44 | ->getMappingBySource('return'); |
45 | - if($meta){ |
|
45 | + if ($meta) { |
|
46 | 46 | $meta->description = $doc; |
47 | 47 | $meta->type = $type; |
48 | - $meta->container = $type == 'void'?null:ContainerFactory::create($entityBuilder, $type); |
|
48 | + $meta->container = $type == 'void' ?null:ContainerFactory::create($entityBuilder, $type); |
|
49 | 49 | } |
50 | 50 | } |
51 | 51 | } |
52 | 52 | \ No newline at end of file |
@@ -55,12 +55,12 @@ |
||
55 | 55 | */ |
56 | 56 | public function rule($rule, $fields) |
57 | 57 | { |
58 | - if(is_string($rule)){ |
|
58 | + if (is_string($rule)) { |
|
59 | 59 | $rules = explode('|', $rule); |
60 | - foreach ($rules as $r){ |
|
60 | + foreach ($rules as $r) { |
|
61 | 61 | $params = explode(':', trim($r)); |
62 | 62 | $rule = $params[0]; |
63 | - $params = isset($params[1])?explode(',', $params[1]):[]; |
|
63 | + $params = isset($params[1]) ?explode(',', $params[1]) : []; |
|
64 | 64 | |
65 | 65 | call_user_func_array([$this, 'parent::rule'], array_merge([$rule, $fields], $params)); |
66 | 66 |
@@ -29,9 +29,9 @@ discard block |
||
29 | 29 | ->from($this->entity->getTable()) |
30 | 30 | ->where("`{$this->entity->getPK()}` = ?", $id) |
31 | 31 | ->getFirst(); |
32 | - if($row){ |
|
32 | + if ($row) { |
|
33 | 33 | return $this->entity->make($row, false); |
34 | - }else{ |
|
34 | + }else { |
|
35 | 35 | return null; |
36 | 36 | } |
37 | 37 | } |
@@ -53,7 +53,7 @@ discard block |
||
53 | 53 | * @param mixed|null $_ |
54 | 54 | * @return \PhpBoot\DB\rules\basic\WhereRule |
55 | 55 | */ |
56 | - public function deleteWhere($conditions, $_=null) |
|
56 | + public function deleteWhere($conditions, $_ = null) |
|
57 | 57 | { |
58 | 58 | $query = $this->db->deleteFrom($this->entity->getTable()); |
59 | 59 | return call_user_func_array([$query, 'where'], func_get_args()); |
@@ -75,12 +75,12 @@ discard block |
||
75 | 75 | * @param string $_ |
76 | 76 | * @return \PhpBoot\DB\rules\select\WhereRule |
77 | 77 | */ |
78 | - public function findWhere($conditions=null, $_=null) |
|
78 | + public function findWhere($conditions = null, $_ = null) |
|
79 | 79 | { |
80 | - $query = $this->db->select($this->getColumns()) |
|
80 | + $query = $this->db->select($this->getColumns()) |
|
81 | 81 | ->from($this->entity->getTable()); |
82 | - $query->context->resultHandler = function ($result){ |
|
83 | - foreach ($result as &$i){ |
|
82 | + $query->context->resultHandler = function($result) { |
|
83 | + foreach ($result as &$i) { |
|
84 | 84 | $i = $this->entity->make($i, false); |
85 | 85 | } |
86 | 86 | return $result; |
@@ -107,16 +107,16 @@ discard block |
||
107 | 107 | * @param string $_ |
108 | 108 | * @return \PhpBoot\DB\rules\basic\WhereRule |
109 | 109 | */ |
110 | - public function updateWhere($values, $conditions, $_=null) |
|
110 | + public function updateWhere($values, $conditions, $_ = null) |
|
111 | 111 | { |
112 | - $query = $this->db->update($this->entity->getTable())->set($values); |
|
113 | - return call_user_func_array([$query, 'where'], array_slice(func_get_args(),1)); |
|
112 | + $query = $this->db->update($this->entity->getTable())->set($values); |
|
113 | + return call_user_func_array([$query, 'where'], array_slice(func_get_args(), 1)); |
|
114 | 114 | } |
115 | 115 | |
116 | 116 | protected function getColumns() |
117 | 117 | { |
118 | 118 | $columns = []; |
119 | - foreach ($this->entity->getProperties() as $p){ |
|
119 | + foreach ($this->entity->getProperties() as $p) { |
|
120 | 120 | $columns[] = $p->name; |
121 | 121 | } |
122 | 122 | return $columns; |