~grubng-dev/grubng/tools-urlsdb

« back to all changes in this revision

Viewing changes to Main.cs

  • Committer: thindil
  • Date: 2011-04-18 17:11:07 UTC
  • Revision ID: thindil2@gmail.com-20110418171107-urru29lqojiuvwiy
added creation of database backup during maintenance work

Show diffs side-by-side

added added

removed removed

Lines of Context:
121
121
                                        Console.WriteLine("Please enter backup file name.");
122
122
                                        return;
123
123
                                }
124
 
                                util.Message("Creating database backup ... ", false);
125
 
                                StreamWriter writer = new StreamWriter(args[pos]);
126
 
                                StringBuilder urls2 = new StringBuilder();
127
 
                                util.ProgressStart(0, "URL's was saved");
128
 
                                while (true)
129
 
                                {
130
 
                                        urls2.Append(db.SelectURLs(util.Curamount));
131
 
                                        if (urls2.Length == 0)
132
 
                                        {
133
 
                                                break;
134
 
                                        }
135
 
                                        urls2.Append(Environment.NewLine);
136
 
                                        writer.Write(urls2);
137
 
                                        writer.Flush();
138
 
                                        urls2.Remove(0, urls2.Length);
139
 
                                        util.Curamount += 100000;
140
 
                                }
141
 
                                util.ProgressStop();
142
 
                                writer.Close();
143
 
                                writer.Dispose();
144
 
                                util.Message(" done.", true);
 
124
                                MainClass.Backup(args[pos], ref util, ref db);
145
125
                        }
146
126
                        ParseURLs parseurl = new ParseURLs();
147
127
                        int amount = 0;
488
468
                                MainClass.SendCommand("<optimize/>", "Solr");
489
469
                                util.Message("done.", true);
490
470
                        }
 
471
                        //Create database backup during maintenance work
 
472
                        if (command == "maintain")
 
473
                        {
 
474
                                MainClass.Backup(DateTime.UtcNow.ToString("yyyy" + "MM" + "dd") + ".txt", ref util, ref db);
 
475
                        }
491
476
                        if ((command == "maintain") || (command == "optimizedb") || (command == "optimizesolr"))
492
477
                        {
493
478
                                MainClass.SendCommand("serverenabled=Y,enableupload=Y", "Upload server");
588
573
                                }
589
574
                        }
590
575
                }
 
576
                
 
577
                /// <summary>
 
578
                /// Function create database backup to selected file.
 
579
                /// </summary>
 
580
                /// <param name="filename">
 
581
                /// A <see cref="System.String"/> name of backup file.
 
582
                /// </param>
 
583
                /// <param name="util">
 
584
                /// A <see cref="Utils"/> object for show messages.
 
585
                /// </param>
 
586
                /// <param name="db">
 
587
                /// A <see cref="Database"/> database object.
 
588
                /// </param>
 
589
                public static void Backup(string filename, ref Utils util, ref Database db)
 
590
                {
 
591
                        util.Message("Creating database backup ... ", false);
 
592
                        StreamWriter writer = new StreamWriter(filename);
 
593
                        StringBuilder urls2 = new StringBuilder();
 
594
                        util.ProgressStart(0, "URL's was saved");
 
595
                        while (true)
 
596
                        {
 
597
                                urls2.Append(db.SelectURLs(util.Curamount));
 
598
                                if (urls2.Length == 0)
 
599
                                {
 
600
                                        break;
 
601
                                }
 
602
                                urls2.Append(Environment.NewLine);
 
603
                                writer.Write(urls2);
 
604
                                writer.Flush();
 
605
                                urls2.Remove(0, urls2.Length);
 
606
                                util.Curamount += 100000;
 
607
                        }
 
608
                        util.ProgressStop();
 
609
                        writer.Close();
 
610
                        writer.Dispose();
 
611
                        util.Message(" done.", true);
 
612
                }
591
613
        }
592
614
        
593
615
        /// <summary>