public void Export(CSession parent, ref CDatabaseConnection conn, List <IDiscoveredObject> sites, List <IDiscoveredObject> DiscoveredServers)
        {
            _DBConn = conn;

            IEnumerable <CSite> _discoveredsites = sites.OfType <CSite>();

            DiscoveredSites = new List <CSite> {
            };
            DiscoveredSites.AddRange(_discoveredsites);
            DiscoveredGroups = new Dictionary <string, CDiscoveredConfig> {
            };
            ExportedEntries  = new List <string> {
            };

            foreach (CService server in DiscoveredServers)
            {
                foreach (CQuery query in server.Session.Queries)
                {
                    for (int i = 0; i < query.Result.Count; i++)
                    {
                        ExportDiscoveredConfig(query.Result[i], server, true);
                    }
                }
                foreach (CDiscoveredConfig group in DiscoveredGroups.Values)
                {
                    ExportDiscoveredConfig(group);
                }
            }

            _DBConn.Close();
            _DBConn.Dispose();
            parent.Progress.Status = new CTaskInfo.State(CTaskInfo.State.Success);
            parent.Completed       = true;
        }
Beispiel #2
0
 internal void Dispose()
 {
     if (_DBConn != null)
     {
         _DBConn.Dispose();
     }
     SessionManager.Dispose();
     if (SessionInfo != null)
     {
         SessionInfo.Clear();
         SessionInfo = null;
     }
 }