コード例 #1
0
        protected override void Execute(Sys.Threading.ThreadPool owner)
        {
            bool added = false;

            foreach (string s in STEM.Sys.IO.Directory.STEM_GetFiles(_ExtensionDirectory, "*.dll|*.so|*.a|*.lib", "!.Archive|!TEMP", _Recurse ? System.IO.SearchOption.AllDirectories : System.IO.SearchOption.TopDirectoryOnly, false))
            {
                if (!AssemblyList.Descriptions.Exists(i => i.Filename == s.Substring(_ExtensionDirectory.Length).Trim(System.IO.Path.DirectorySeparatorChar)))
                {
                    try
                    {
                        Sys.IO.FileDescription d = new Sys.IO.FileDescription(_ExtensionDirectory, s.Substring(_ExtensionDirectory.Length).Trim(System.IO.Path.DirectorySeparatorChar), true);

                        if (d.Content.Length > 0)
                        {
                            lock (AssemblyList)
                            {
                                AssemblyList.Descriptions.Add(d);
                                added = true;
                            }
                        }
                    }
                    catch { }
                }
            }

            if (added)
            {
                lock (_RegisteredConnections)
                    foreach (DeliverDelta d in _RegisteredConnections.Values)
                    {
                        d.ExecutionInterval = TimeSpan.FromSeconds(1);
                    }
            }
        }
コード例 #2
0
        protected override void Execute(Sys.Threading.ThreadPool owner)
        {
            foreach (string s in STEM.Sys.IO.Directory.STEM_GetFiles(_ExtensionDirectory, "*.dll|*.so|*.a|*.lib", "!.Archive|!TEMP", _Recurse ? System.IO.SearchOption.AllDirectories : System.IO.SearchOption.TopDirectoryOnly, false))
            {
                if (!AssemblyList.Descriptions.Exists(i => i.Filename == s.Substring(_ExtensionDirectory.Length).Trim(System.IO.Path.DirectorySeparatorChar)))
                {
                    try
                    {
                        Sys.IO.FileDescription d = new Sys.IO.FileDescription(_ExtensionDirectory, s.Substring(_ExtensionDirectory.Length).Trim(System.IO.Path.DirectorySeparatorChar), true);

                        if (d.Content.Length > 0)
                        {
                            lock (AssemblyList)
                                AssemblyList.Descriptions.Add(d);
                        }
                    }
                    catch { }
                }
            }
        }