Exemple #1
0
        private InProgress go( vdFtpWorkUnit w, string strPath )
        {
            var skola = new PlataDM.Skola( null, 0 );
            skola.Open( strPath );
            var f = w.addFolder( skola.OrderNr );

            var excludeThese = findFilesToExclude( skola );
            foreach ( var strFullFN in Directory.GetFiles( skola.HomePath ) )
            {
                var plainFileName = Path.GetFileName( strFullFN ).ToLower();
                switch ( plainFileName )
                {
                    case "!fotoorder.emf":
                        break;
                    case "!order.plata":
                        if ( skola.Verifierad )
                            goto default;
                        f.AddLocalItem(
                            strFullFN,
                            string.Format( "!order_{0:yyyyMMddHHmmss}.plata", Global.Now ) );
                        break;
                    default:
                        if ( !excludeThese.Contains( plainFileName ) )
                            f.AddLocalItem( strFullFN, plainFileName );
                        break;
                }
            }

            var strZZLast = Path.Combine( skola.HomePath, "zzlast" );
            Util.safeKillFile( strZZLast );
            if ( skola.Verifierad )
                f.AddLocalItem(
                    strZZLast,
                    "zzlast" ).FileType = vdFtpFileType.EndFileForOneFolder;

            var row = ugProgress.addRow();
            row.Cells[0].Value = skola.OrderNr;
            row.Cells[1].Value = skola.Namn;
            row.Cells[2].Value = skola.Ort;
            row.EndEdit();

            var ip = new InProgress();
            f.Tag = ip;
            ip.Path = strPath;
            ip.Folder = f;
            ip.Row = row;
            ip.Work = w;
            ip.IsBackup = !skola.Verifierad;
            row.Tag = ip;
            _dicInProgress.Add( strPath, ip );
            return ip;
        }
Exemple #2
0
        private void doneWithInProgress( InProgress ip, bool fSuccess )
        {
            if ( ip.TimeEstimator!=null )
                Global.Preferences.FTPSpeed =
                    (Global.Preferences.FTPSpeed + (int)(ip.TimeEstimator.UnitsPerSecond / 1024)) / 2;
            _dicInProgress.Remove( ip.Path );
            ugProgress.G.DataRows.Remove( ip.Row );

            if ( fSuccess )
            {
                PlataDM.Skola skola;
                if ( Global.Skola != null && string.Compare( ip.Path, Global.Skola.HomePath, true ) == 0 )
                    skola = Global.Skola;
                else
                {
                    skola = new PlataDM.Skola( null, 0 );
                    skola.Open( ip.Path );
                }
                skola.BackupWhen = vdUsr.DateHelper.YYYYMMDDHHMM( Global.Now );
                skola.save( true );
            }
        }