<?php

include_once(dirname(__FILE__).'/Generators/DNS.php');
include_once(dirname(__FILE__).'/Generators/CheckPorts.php');
include_once(dirname(__FILE__).'/Generators/Latency.php');

class ModuleNetworkConfigLinux extends Module
{
  function __construct(System $System)
  {
    parent::__construct($System);
    $this->Name = 'NetworkConfigLinux';
    $this->Version = '1.0';
    $this->Creator = 'Chronos';
    $this->License = 'GNU/GPL';
    $this->Description = 'Network service configuration of Linux server';
    $this->Dependencies = array(ModuleNetworkConfig::GetName());
  }

  function DoStart(): void
  {
    ModuleNetworkConfig::Cast($this->System->GetModule('NetworkConfig'))->RegisterConfigItem('linux-dns', 'ConfigDNS');
    ModuleNetworkConfig::Cast($this->System->GetModule('NetworkConfig'))->RegisterConfigItem('linux-checkports', 'ConfigCheckPorts');
    ModuleNetworkConfig::Cast($this->System->GetModule('NetworkConfig'))->RegisterConfigItem('linux-latency', 'ConfigLatency');
  }
}
