Beispiel #1
0
 public function delete()
 {
     if ($this->getRouterId() != 0) {
         //delete all interfaces
         $networkinterfacelist = new Networkinterfacelist(false, $this->getRouterId());
         $networkinterfacelist->delete();
         //delete originator statusses
         $originator_status_list = new OriginatorStatusList($this->getRouterId());
         $originator_status_list->delete();
         //delete batman advanced interfaces
         try {
             $stmt = DB::getInstance()->prepare("DELETE FROM crawl_batman_advanced_interfaces WHERE router_id=?");
             $stmt->execute(array($this->getRouterId()));
         } catch (PDOException $e) {
             echo $e->getMessage();
             echo $e->getTraceAsString();
         }
         //delete router statusses
         $router_status_list = new RouterStatusList($this->getRouterId());
         $router_status_list->delete();
         //delete event notifications (we need to delete all notifications that users created for this router
         //thats why we need a list here)
         $event_notification_list = new EventNotificationList(false, "router_offline", $this->getRouterId());
         $event_notification_list->delete();
         //Delete api keys
         $api_key_list = new ApiKeyList($this->getRouterId(), 'router');
         $api_key_list->delete();
         //delete router
         try {
             $stmt = DB::getInstance()->prepare("DELETE FROM routers WHERE id=?");
             $stmt->execute(array($this->getRouterId()));
             return $stmt->rowCount();
         } catch (PDOException $e) {
             echo $e->getMessage();
             echo $e->getTraceAsString();
         }
     }
     return false;
 }