private static void AddExtensionsToCatalog(AggregateCatalog catalog)
{
IEnumerable<string> directories = new[] { ExtensionsDirectoryRoot };
var customExtensions = Environment.GetEnvironmentVariable(NuGetExtensionsKey);
if (!String.IsNullOrEmpty(customExtensions))
{
// Add all directories from the environment variable if available.
directories = directories.Concat(customExtensions.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries));
}
foreach (var directory in directories)
{
if (Directory.Exists(directory))
{
var files = Directory.EnumerateFiles(directory, "*.dll", SearchOption.AllDirectories);
RegisterExtensions(catalog, files);
}
}
}