Scalr\Observer\DNSEventObserver::OnFarmTerminated PHP Method

OnFarmTerminated() public method

See also: Scalr\Observer\AbstractEventObserver::OnFarmTerminated()
public OnFarmTerminated ( FarmTerminatedEven\FarmTerminatedEvent $event )
$event FarmTerminatedEven\FarmTerminatedEvent
    public function OnFarmTerminated(FarmTerminatedEvent $event)
    {
        //SYSTEM DNS ZONES
        if (\Scalr::config('scalr.dns.static.enabled')) {
            $pdnsDb = \Scalr::getContainer()->dnsdb;
            $pdnsDb->Execute("DELETE FROM `domains` WHERE scalr_farm_id = ?", array($event->GetFarmID()));
        }
        if (!$event->RemoveZoneFromDNS) {
            return;
        }
        $zones = DBDNSZone::loadByFarmId($event->GetFarmID());
        if (count($zones) == 0) {
            return;
        }
        foreach ($zones as $zone) {
            if ($zone->status != DNS_ZONE_STATUS::PENDING_DELETE) {
                $zone->status = DNS_ZONE_STATUS::INACTIVE;
                $zone->save();
            }
        }
    }