Changeset 34 for trunk/www/server.php


Ignore:
Timestamp:
Jun 15, 2009, 9:09:30 AM (15 years ago)
Author:
george
Message:
  • Přidáno: Uzamykání serverů a emulátorů pro vyloučení souběžných a opakovaných operací nad jednou položkou.
  • Upraveno: Zobrazovat čas trvání u úloh. Čas rozdělen na čas vytvoření, spuštění a ukončení.
  • Opraveno: Zobrazování čísel s jednotkami. Byl problém se zápornými čísly a čísly menšími než 1.
  • Přidáno: Jednotka shell pro sjednocený přístup k PHP funkcím z příkazového řádku.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/www/server.php

    r31 r34  
    5656  function ImportDatabase($Delete = false)
    5757  {
     58    $this->Lock();
    5859    $CommandList = array(
    5960      'mysql --user=server'.$this->Id.' --password=server'.$this->Id.' server'.$this->Id.'_mangos < database/'.$this->Server['Database']['Id'].'/'.$this->Server['Database']['SourceFileName'],
     
    7475  }
    7576 
    76   function AddServer($Version)
    77   {
    78    
    79   }
    80  
    8177  function Start()
    8278  {
     79    $this->Lock();
    8380    $this->Task->Add('Start emulátoru', array(
    8481      'screen -A -m -d -S server'.$this->Id.'-realmd emulator/'.$this->Server['Database']['Emulator']['Id'].'/bin/mangos-realmd -c server/'.$this->Id.'/etc/realmd.conf',
     
    9087  function Stop()
    9188  {
     89    $this->Lock();
    9290    $this->Task->Add('Zastavení emulátoru', array(
    9391      'server/'.$this->Id.'/bin/stop.sh',
     
    177175      'gdb emulator/'.$this->Server['Database']['Emulator']['Id'].'/bin/mangos-worldd -x server/'.$this->Id.'/bin/mangos.gdb --batch >>server/'.$this->Id.'/log/mangos-worldd.log 2>>server/'.$this->Id.'/log/mangos-worldd.err',
    178176      'cd www',
    179       'php mangos_debug_process.php '.$this->Id.' >>server/'.$this->Id.'/log/mangos_debug.log 2>>server/'.$this->Id.'/log/mangos_debug.err',
     177      'php shell.php ServerProcessLog '.$this->Id.' >>server/'.$this->Id.'/log/mangos_debug.log 2>>server/'.$this->Id.'/log/mangos_debug.err',
    180178      'cd ..',
    181179      'sleep 3',
     
    275273  function Update($DatabaseId)
    276274  {
     275    $this->Lock();
     276   
    277277    // Stop server before update
    278278    $Output = $this->Stop();
     
    306306    return($Output);
    307307  }
     308 
     309  function Lock()
     310  {
     311    $this->Database->update('Server', 'Id='.$this->Id, array('Lock' => 1));
     312  }
     313 
     314  function UnLock()
     315  {
     316    $this->Database->update('Server', 'Id='.$this->Id, array('Lock' => 0));
     317  }
    308318}
    309319
Note: See TracChangeset for help on using the changeset viewer.