diff --git a/lib/midcom/services/rcs/main.php b/lib/midcom/services/rcs/main.php index 586ef28863..25bb29f8d4 100644 --- a/lib/midcom/services/rcs/main.php +++ b/lib/midcom/services/rcs/main.php @@ -39,12 +39,13 @@ public function __construct(midcom_config $config) /** * Factory function for the handler object. */ - public function load_backend($object) : ?midcom_services_rcs_backend + public function load_backend($object) : midcom_services_rcs_backend { if (!$object->guid) { - return null; + $class = midcom_services_rcs_backend_null::class; + } else { + $class = $this->config->get_backend_class(); } - $class = $this->config->get_backend_class(); return new $class($object, $this->config); } @@ -60,10 +61,6 @@ public function update($object, $message = null) : bool return true; } $backend = $this->load_backend($object); - if (!is_object($backend)) { - debug_add('Could not load handler!'); - return false; - } if (!$backend->update($object, $message)) { debug_add('RCS: Could not save file!'); return false; diff --git a/lib/net/nemein/wiki/handler/latest.php b/lib/net/nemein/wiki/handler/latest.php index 7cc1bbf312..2bc822e209 100644 --- a/lib/net/nemein/wiki/handler/latest.php +++ b/lib/net/nemein/wiki/handler/latest.php @@ -36,10 +36,6 @@ private function _seek_updated(int $from, $to = null) foreach ($qb->execute() as $page) { $rcs_handler = $rcs->load_backend($page); - if (!$rcs_handler) { - // Skip this one - continue; - } // Get object history foreach ($rcs_handler->list_history() as $version => $history) { diff --git a/lib/net/nemein/wiki/wikipage.php b/lib/net/nemein/wiki/wikipage.php index 4b28c6633d..a3334020d6 100644 --- a/lib/net/nemein/wiki/wikipage.php +++ b/lib/net/nemein/wiki/wikipage.php @@ -175,11 +175,7 @@ private function update_watchers() private function get_diff() : string { // Load the RCS handler - $rcs = midcom::get()->rcs; - $rcs_handler = $rcs->load_backend($this); - if (!$rcs_handler) { - return null; - } + $rcs_handler = midcom::get()->rcs->load_backend($this); // Find out what versions to diff $history = $rcs_handler->list_history_numeric(); diff --git a/test/midcom/services/rcs/mainTest.php b/test/midcom/services/rcs/mainTest.php index b7a124b00b..9355e2e799 100644 --- a/test/midcom/services/rcs/mainTest.php +++ b/test/midcom/services/rcs/mainTest.php @@ -23,7 +23,7 @@ public function test_load_backend() $rcs = new midcom_services_rcs($conf); $topic = new midcom_db_topic; $handler = $rcs->load_backend($topic); - $this->assertNull($handler); + $this->assertInstanceOf(midcom_services_rcs_backend_null::class, $handler); $topic = $this->create_object(midcom_db_topic::class); $handler = $rcs->load_backend($topic);