src/Mmi/Db/Deployer.php
protected function _importIncremental($file)
    {
        //nazwa pliku
        $baseFileName = basename($file);
        //hash pliku
        $md5file = md5_file($file);
        //ustawianie domyślnych parametrów importu
        \App\Registry::$db->setDefaultImportParams();
        //pobranie rekordu
        try {
            $dc = (new Orm\ChangelogQuery)->whereFilename()->equals(basename($file))->findFirst();
        } catch (\Exception $e) {
            echo 'INITIAL IMPORT.' . "\n";
            $dc = null;
        }
        //restore istnieje md5 zgodne
        if ($dc && $dc->md5 == $md5file) {
            echo 'INCREMENTAL PRESENT: ' . $baseFileName . "\n";
            return;
        }
        //restore istnieje md5 niezgodne - plik się zmienił - przerwanie importu
        if ($dc) {
            throw new \Mmi\App\KernelException('INVALID MD5: ' . $baseFileName . ' --- VALID: ' . $md5file . ' --- IMPORT TERMINATED!\n');
        }
        //informacja na ekran przed importem aby bylo wiadomo który
        echo 'RESTORE INCREMENTAL: ' . $baseFileName . "\n";
        //import danych
        $this->_importSql($file);
        //resetowanie struktur tabeli
        \Mmi\Orm\DbConnector::resetTableStructures();
        //brak restore - zakłada nowy rekord
        $newDc = new Orm\ChangelogRecord;
        //zapis informacji o incrementalu
        $newDc->filename = $baseFileName;
        //wstawienie md5
        $newDc->md5 = $md5file;
        //zapis rekordu
        $newDc->save();
    }
protected function _importIncremental($file)
    {
        //nazwa pliku
        $baseFileName = basename($file);
        //hash pliku
        $md5file = md5_file($file);
        //ustawianie domyślnych parametrów importu
        \App\Registry::$db->setDefaultImportParams();
        //pobranie rekordu
        try {
            $dc = (new Orm\ChangelogQuery)->whereFilename()->equals(basename($file))->findFirst();
        } catch (\Exception $e) {
            echo 'INITIAL IMPORT.' . "\n";
            $dc = null;
        }
        //restore istnieje md5 zgodne
        if ($dc && $dc->md5 == $md5file) {
            echo 'INCREMENTAL PRESENT: ' . $baseFileName . "\n";
            return;
        }
        //restore istnieje md5 niezgodne - plik się zmienił - przerwanie importu
        if ($dc) {
            throw new \Mmi\App\KernelException('INVALID MD5: ' . $baseFileName . ' --- VALID: ' . $md5file . ' --- IMPORT TERMINATED!\n');
        }
        //informacja na ekran przed importem aby bylo wiadomo który
        echo 'RESTORE INCREMENTAL: ' . $baseFileName . "\n";
        //import danych
        $this->_importSql($file);
        //resetowanie struktur tabeli
        \Mmi\Orm\DbConnector::resetTableStructures();
        //brak restore - zakłada nowy rekord
        $newDc = new Orm\ChangelogRecord;
        //zapis informacji o incrementalu
        $newDc->filename = $baseFileName;
        //wstawienie md5
        $newDc->md5 = $md5file;
        //zapis rekordu
        $newDc->save();
    }
protected function _importIncremental ( $ file ) { //nazwa pliku $ baseFileName = basename ( $ file ) ; //hash pliku $ md5file = md5_file ( $ file ) ; //ustawianie domyślnych parametrów importu \ App \ Registry :: $ db -> setDefaultImportParams ( ) ; //pobranie rekordu try { $ dc = ( new Orm \ ChangelogQuery ) -> whereFilename ( ) -> equals ( basename ( $ file ) ) -> findFirst ( ) ; } catch ( \ Exception $ e ) { echo 'INITIAL IMPORT.' . "\n" ; $ dc = null ; } //restore istnieje md5 zgodne if ( $ dc && $ dc -> md5 == $ md5file ) { echo 'INCREMENTAL PRESENT: ' . $ baseFileName . "\n" ; return ; } //restore istnieje md5 niezgodne - plik się zmienił - przerwanie importu if ( $ dc ) { throw new \ Mmi \ App \ KernelException ( 'INVALID MD5: ' . $ baseFileName . ' --- VALID: ' . $ md5file . ' --- IMPORT TERMINATED!\n' ) ; } //informacja na ekran przed importem aby bylo wiadomo który echo 'RESTORE INCREMENTAL: ' . $ baseFileName . "\n" ; //import danych $ this -> _importSql ( $ file ) ; //resetowanie struktur tabeli \ Mmi \ Orm \ DbConnector :: resetTableStructures ( ) ; //brak restore - zakłada nowy rekord $ newDc = new Orm \ ChangelogRecord ; //zapis informacji o incrementalu $ newDc -> filename = $ baseFileName ; //wstawienie md5 $ newDc -> md5 = $ md5file ; //zapis rekordu $ newDc -> save ( ) ; }
Importuje pojedynczy plik
@param string $file
@throws \Mmi\App\KernelException
Importuje pojedynczy plik