GET([ new Rules(self::KEY_SERVICE) ->type(Type::ENUM, ServiceEnum::values()) ->default(ServiceEnum::ALL->value) ])); } public function main(): Response { switch ($_GET[self::KEY_SERVICE]) { case ServiceEnum::FORGEJO->value: return new Response($this->update_forgejo()); case ServiceEnum::TIMELINE->value: return new Response($this->update_timeline()); case ServiceEnum::ALL->value: default: return new Response( $this->update_timeline() && $this->update_forgejo() ); } } private function update_timeline(): bool { return new GenerateTimeline()->generate(); } private function update_forgejo(): bool { return new Forgejo()->update(); } }