From 1edebec207a4187f2bfc0d83bffa554d2414af96 Mon Sep 17 00:00:00 2001 From: relativity-codes Date: Wed, 9 Oct 2024 12:24:06 +0100 Subject: [PATCH 1/2] Update Generator.php --- src/Generator.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Generator.php b/src/Generator.php index 3a3e96c..aae744a 100755 --- a/src/Generator.php +++ b/src/Generator.php @@ -6,6 +6,7 @@ use Illuminate\Support\Str; use Illuminate\Routing\Route; use Illuminate\Foundation\Http\FormRequest; +use Illuminate\Support\Facades\Log; class Generator { @@ -178,7 +179,13 @@ protected function getFormRules() $parsedAction = Str::parseCallback($this->action); - $reflector = (new ReflectionMethod($parsedAction[0], $parsedAction[1])); + try { + $reflector = new ReflectionMethod($parsedAction[0], $parsedAction[1]); + } catch (\ReflectionException $e) { + Log::info('Parsed Action:', $parsedAction); // No need to wrap in array + Log::error('ReflectionException: ' . $e->getMessage()); // Use Log::error for exceptions + return false; + } $parameters = $reflector->getParameters(); $docComment = $reflector->getDocComment(); From 4fb639c0a2883d3f621bf44657454ebe0697e742 Mon Sep 17 00:00:00 2001 From: relativity-codes Date: Wed, 9 Oct 2024 12:26:53 +0100 Subject: [PATCH 2/2] Update Generator.php added exception handler for none method action used in a route controller on api e.g: Route::get('/', function () { return [ 'message' => 'Welcome to the /v2 endpoint', 'version' => '2.0' ]; }); --- src/Generator.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Generator.php b/src/Generator.php index aae744a..c8340af 100755 --- a/src/Generator.php +++ b/src/Generator.php @@ -182,8 +182,8 @@ protected function getFormRules() try { $reflector = new ReflectionMethod($parsedAction[0], $parsedAction[1]); } catch (\ReflectionException $e) { - Log::info('Parsed Action:', $parsedAction); // No need to wrap in array - Log::error('ReflectionException: ' . $e->getMessage()); // Use Log::error for exceptions + Log::info('Parsed Action:', $parsedAction); + Log::error('ReflectionException: ' . $e->getMessage()); return false; } $parameters = $reflector->getParameters();