/[xmltv_parser]/trunk/GBPVRProgramDatabaseFixer/Program.cs
ViewVC logotype

Diff of /trunk/GBPVRProgramDatabaseFixer/Program.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 154 by william, Thu Mar 14 16:56:05 2013 UTC revision 155 by william, Thu Mar 14 17:10:09 2013 UTC
# Line 14  namespace GBPVRProgramDatabaseFixer Line 14  namespace GBPVRProgramDatabaseFixer
14      {      {
15          static string XMLTV_FILE = "";          static string XMLTV_FILE = "";
16          static string GBPVR_DATABASE = "";          static string GBPVR_DATABASE = "";
17    
18            static bool LOADING_XMLTV_FILE = false;
19          static bool XMLTV_INSTANCE_CREATED = false;          static bool XMLTV_INSTANCE_CREATED = false;
20            static int LAST_REPORTED_XMLTV_PROGRESS = 0;
21    
         static int LAST_REPORTED_XMLTV_PROGRESS =0;  
22    
23          static FileInfo fi_XMLTVFILE;          static bool LOADING_GBPVR_DATABASE = false;
24            static bool SQLLIST_INSTANCE_CREATED = false;
25            static int LAST_REPORTED_SQLLITE_PROGRESS = 0;
26    
27            static FileInfo fi_XMLTVFILE;
28            static FileInfo fi_GBPVRDATABASE;
29          static void CreateLog()          static void CreateLog()
30          {          {
31              string log_path = Application.StartupPath;              string log_path = Application.StartupPath;
# Line 78  namespace GBPVRProgramDatabaseFixer Line 84  namespace GBPVRProgramDatabaseFixer
84              }              }
85    
86              LoadXMLTVFile();              LoadXMLTVFile();
87                LoadGBPVRDatabase();
88            }
89    
90            static void ConsoleOverwritePreviosLine(string format, params object[] args)
91            {
92                Console.WriteLine(format,args);
93                Console.SetCursorPosition(0, Console.CursorTop - 1);
94          }          }
95    
96          static void gLog_ReportProgress(object sender, ReportProgressEventArgs e)          static void gLog_ReportProgress(object sender, ReportProgressEventArgs e)
97          {          {
98              if (LAST_REPORTED_XMLTV_PROGRESS != e.Progress)              if (!XMLTV_INSTANCE_CREATED && LOADING_XMLTV_FILE)
99              {              {
100                  Console.WriteLine("XMLTV: {0} Loading: {1:00}%", fi_XMLTVFILE.Name, e.Progress);                  if (LAST_REPORTED_XMLTV_PROGRESS != e.Progress)
101                  LAST_REPORTED_XMLTV_PROGRESS = e.Progress;                  {
102                        ConsoleOverwritePreviosLine("XMLTV: {0} Loading: {1:00}%", fi_XMLTVFILE.Name, e.Progress);
103                        LAST_REPORTED_XMLTV_PROGRESS = e.Progress;
104                        if (e.Progress == 100)
105                        {
106                            Console.WriteLine("XMLTV: {0} Loading: {1:00}%", fi_XMLTVFILE.Name, e.Progress);
107                        }
108                    }
109                }
110                if (!SQLLIST_INSTANCE_CREATED && LOADING_GBPVR_DATABASE)
111                {
112                    if (LAST_REPORTED_SQLLITE_PROGRESS != e.Progress)
113                    {
114                        ConsoleOverwritePreviosLine("SQLLITE: {0} Loading: {1:00}%", fi_XMLTVFILE.Name, e.Progress);
115                        LAST_REPORTED_SQLLITE_PROGRESS = e.Progress;
116                        if (e.Progress == 100)
117                        {
118                            Console.WriteLine("SQLLITE: {0} Loading: {1:00}%", fi_XMLTVFILE.Name, e.Progress);
119                        }
120                    }
121              }              }
122          }          }
123          static void LoadXMLTVFile()          static void LoadXMLTVFile()
124          {          {
125                LOADING_XMLTV_FILE = true;
126              if (string.IsNullOrEmpty(XMLTV_FILE))              if (string.IsNullOrEmpty(XMLTV_FILE))
127              {              {
128                  gLog.Error.WriteLine("XMLTV File is either a null or empty string.");                  gLog.Error.WriteLine("XMLTV File is either a null or empty string.");
129                    LOADING_XMLTV_FILE = false;
130                  return;                  return;
131              }              }
132              fi_XMLTVFILE = new FileInfo(XMLTV_FILE);              fi_XMLTVFILE = new FileInfo(XMLTV_FILE);
133              if (!fi_XMLTVFILE.Exists)              if (!fi_XMLTVFILE.Exists)
134              {              {
135                  gLog.Error.WriteLine("Could not find XMLTV File: {0}", fi_XMLTVFILE.FullName);                  gLog.Error.WriteLine("Could not find XMLTV File: {0}", fi_XMLTVFILE.FullName);
136                    LOADING_XMLTV_FILE = false;
137                  return;                  return;
138              }              }
139    
140              XMLTV.Create(fi_XMLTVFILE.FullName, new EventHandler<EventArgs>(XMLTV_OnInstanceCreated));              XMLTV.Create(fi_XMLTVFILE.FullName, new EventHandler<EventArgs>(XMLTV_OnInstanceCreated));
141              while (!XMLTV_INSTANCE_CREATED) { Application.DoEvents(); }              while (!XMLTV_INSTANCE_CREATED) { Application.DoEvents(); }
142                LOADING_XMLTV_FILE = false;
143          }          }
   
144          static void XMLTV_OnInstanceCreated(object sender, EventArgs e) { XMLTV_INSTANCE_CREATED = true; }          static void XMLTV_OnInstanceCreated(object sender, EventArgs e) { XMLTV_INSTANCE_CREATED = true; }
145    
146            static void LoadGBPVRDatabase()
147            {
148                LOADING_GBPVR_DATABASE = true;
149                if (string.IsNullOrEmpty(GBPVR_DATABASE))
150                {
151                    gLog.Error.WriteLine("GBPVR Datbase is either a null or empty string.");
152                    LOADING_GBPVR_DATABASE = false;
153                    return;
154                }
155                fi_GBPVRDATABASE = new FileInfo(GBPVR_DATABASE);
156                if (!fi_GBPVRDATABASE.Exists)
157                {
158                    gLog.Error.WriteLine("Could not find GBPVR Database: {0}", fi_GBPVRDATABASE.FullName);
159                    LOADING_GBPVR_DATABASE = false;
160                    return;
161                }
162    
163    
164                LOADING_GBPVR_DATABASE = false;
165            }
166      }      }
167  }  }

Legend:
Removed from v.154  
changed lines
  Added in v.155

  ViewVC Help
Powered by ViewVC 1.1.22