示例#1
0
        public TravelServer GetTravelServer(string machineName)
        {
            TravelServer result = null;

            foreach (TravelServer travelServer in travelServers)
            {
                if (travelServer.MachineName.Equals(machineName))
                {
                    result = travelServer;
                    break;
                }
            }
            return(result);
        }
示例#2
0
        public void ReloadGroupServerDatabaseListAndSaveToXML()
        {
            inProgress = true;
            OnUpdated(EventArgs.Empty);

            GroupList        groupList = GroupList.instance;
            GroupServerList  gsl;
            ServerList       serverList = new ServerList();
            TravelServerList tsl;
            TravelServer     travelServer = new TravelServer();

            InternetExplorer ie = new InternetExplorer();

            groupList.GetGroupsFromWeb(ie, false);
            groupList.SaveListToXML();

            foreach (string group in groupList.groups)
            {
                //Get server pairs from files or web site
                serverList.groupName = group;
                if (group.ToUpper().Equals("PPE"))
                {
                    serverList.GetServersFromFile(null);
                }
                else
                {
                    serverList.GetServersFromWeb(ie, false);
                }
                //Save server pairs to XML file
                if (File.Exists(Serializer.CreateInstance().applicationFolder + "Servers.xml"))
                {
                    gsl = (Serializer.CreateInstance().DeserializeFromXML(typeof(GroupServerList), "Servers.xml") as GroupServerList);
                    gsl.groupServers.Remove(gsl.GetServerList(serverList.groupName));
                }
                else
                {
                    gsl = GroupServerList.CreateInstance();
                }
                gsl.groupServers.Add(serverList);
                gsl.SaveListToXML();

                foreach (Server serverPair in serverList.servers)
                {
                    //Get databases from registry
                    travelServer.MachineName = serverPair.travelServer;
                    travelServer.GetDatabasesFromRegistryAndChangeProgressBar(null);
                    //Save databases to XML file
                    if (File.Exists(Serializer.CreateInstance().applicationFolder + "Databases.xml"))
                    {
                        tsl = (Serializer.CreateInstance().DeserializeFromXML(typeof(TravelServerList), "Databases.xml") as TravelServerList);
                        tsl.travelServers.Remove(tsl.GetTravelServer(travelServer.MachineName));
                    }
                    else
                    {
                        tsl = TravelServerList.CreateInstance();
                    }
                    tsl.travelServers.Add(travelServer);
                    tsl.SaveListToXml();
                }
            }

            ie.Quit();
            inProgress = false;
            OnUpdated(EventArgs.Empty);
        }
示例#3
0
        public TravelServer GetTravelServerFromXLSAndChangeProgressBar(string machineName, ProgressBar pgb)
        {
            int max = 0;

            if (pgb != null)
            {
                max = pgb.Maximum;
            }
            int i = 2;

            System.Array myvalues;
            TravelServer travelServer = new TravelServer(machineName);

            travelServer.Databases = new List <DatabaseItem>();
            TXTReader txtReader = TXTReader.CreateInstance();

            txtReader.GetServerPortPair();

            Microsoft.Office.Interop.Excel.Application ExcelObj = null;
            ExcelObj = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook theWorkbook = ExcelObj.Workbooks.Open(file, Type.Missing, Type.Missing,
                                                                                          Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                                                                                          Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
            Microsoft.Office.Interop.Excel.Sheets    sheets    = theWorkbook.Worksheets;
            Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)sheets.get_Item(1);

            Microsoft.Office.Interop.Excel.Range range = worksheet.get_Range("A" + i.ToString(), "B" + i.ToString());
            if (pgb != null)
            {
                pgb.Invoke((MethodInvoker) delegate { pgb.Maximum = worksheet.Rows.Row; });
            }
            while (!range.Text.Equals(""))
            {
                myvalues = (System.Array)range.Cells.Value2;
                if (machineName.Equals("All") || myvalues.GetValue(1, 1).ToString().Equals(machineName))
                {
                    DatabaseItem databaseItem = new DatabaseItem(myvalues.GetValue(1, 2).ToString(),
                                                                 myvalues.GetValue(1, 2).ToString(), "PPE database", "CHC-APPWG01.idx.expedmz.com," +
                                                                 txtReader.GetPortByServerName(myvalues.GetValue(1, 1).ToString()).Value.ToString(),
                                                                 "Update8!", "expdev");
                    travelServer.Databases.Add(databaseItem);
                }
                i++;
                range = worksheet.get_Range("A" + i.ToString(), "B" + i.ToString());
                if (pgb != null)
                {
                    pgb.Invoke((MethodInvoker) delegate
                    {
                        pgb.PerformStep();
                        GlobalOperator.SetProgressBarText(pgb, "Reloading databases of " + machineName);
                    });
                }
            }

            theWorkbook.Close(Microsoft.Office.Interop.Excel.XlSaveAction.xlDoNotSaveChanges, Type.Missing, Type.Missing);
            ExcelObj.Quit();
            if (pgb != null)
            {
                pgb.Invoke((MethodInvoker) delegate { pgb.Maximum = max; });
            }
            return(travelServer);
        }