🎨Initializate list of plugins at the same time PluginBase is constructed.

This commit is contained in:
2017-12-26 06:43:29 +00:00
parent 2eca6ec8be
commit 5b56702c60
12 changed files with 4 additions and 21 deletions

View File

@@ -469,7 +469,6 @@ namespace DiscImageChef.Core.Devices.Dumping
(double)blockSize * (double)(blocks + 1) / 1024 / (totalChkDuration / 1000));
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
FiltersList filtersList = new FiltersList();
IFilter inputFilter = filtersList.GetFilter(outputPrefix + ".bin");

View File

@@ -594,7 +594,6 @@ namespace DiscImageChef.Core.Devices.Dumping
(double)blockSize * (double)(blocks + 1) / 1024 / (totalChkDuration / 1000));
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
FiltersList filtersList = new FiltersList();
IFilter inputFilter = filtersList.GetFilter(outputPrefix + outputExtension);

View File

@@ -451,7 +451,6 @@ namespace DiscImageChef.Core.Devices.Dumping
(double)blockSize * (double)(blocks + 1) / 1024 / (totalChkDuration / 1000));
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
FiltersList filtersList = new FiltersList();
IFilter inputFilter = filtersList.GetFilter(outputPrefix + ".bin");

View File

@@ -794,7 +794,6 @@ namespace DiscImageChef.Core.Devices.Dumping
(double)BLOCK_SIZE * (double)(blocks + 1) / 1024 / (totalChkDuration / 1000));
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
FiltersList filtersList = new FiltersList();
IFilter inputFilter = filtersList.GetFilter(outputPrefix + ".iso");

View File

@@ -49,7 +49,6 @@ namespace DiscImageChef.Core
public static void Identify(IMediaImage imagePlugin, out List<string> idPlugins, Partition partition)
{
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
idPlugins = (from plugin in plugins.PluginsList.Values
where plugin.Identify(imagePlugin, partition)

View File

@@ -50,7 +50,6 @@ namespace DiscImageChef.Core
try
{
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
IMediaImage imageFormat = null;

View File

@@ -52,7 +52,6 @@ namespace DiscImageChef.Core
public static List<Partition> GetAll(IMediaImage image)
{
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
List<Partition> foundPartitions = new List<Partition>();
List<Partition> childPartitions = new List<Partition>();
List<ulong> checkedLocations = new List<ulong>();

View File

@@ -50,15 +50,15 @@ namespace DiscImageChef.Core
/// <summary>
/// List of all media image plugins
/// </summary>
public SortedDictionary<string, IMediaImage> ImagePluginsList;
public readonly SortedDictionary<string, IMediaImage> ImagePluginsList;
/// <summary>
/// List of all partition plugins
/// </summary>
public SortedDictionary<string, IPartition> PartPluginsList;
public readonly SortedDictionary<string, IPartition> PartPluginsList;
/// <summary>
/// List of all filesystem plugins
/// </summary>
public SortedDictionary<string, IFilesystem> PluginsList;
public readonly SortedDictionary<string, IFilesystem> PluginsList;
/// <summary>
/// Initializes the plugins lists
@@ -68,13 +68,7 @@ namespace DiscImageChef.Core
PluginsList = new SortedDictionary<string, IFilesystem>();
PartPluginsList = new SortedDictionary<string, IPartition>();
ImagePluginsList = new SortedDictionary<string, IMediaImage>();
}
/// <summary>
/// Fills the plugins lists
/// </summary>
public void RegisterAllPlugins()
{
Assembly assembly = Assembly.GetAssembly(typeof(IMediaImage));
foreach(Type type in assembly.GetTypes().Where(t => t.GetInterfaces().Contains(typeof(IMediaImage))))

View File

@@ -53,7 +53,6 @@ namespace DiscImageChef.Core
{
CICMMetadataType sidecar = new CICMMetadataType();
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
FileInfo fi = new FileInfo(imagePath);
FileStream fs = new FileStream(imagePath, FileMode.Open, FileAccess.Read);

View File

@@ -78,7 +78,6 @@ namespace DiscImageChef.Commands
}
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
try
{

View File

@@ -45,7 +45,6 @@ namespace DiscImageChef.Commands
internal static void ListFormats(FormatsOptions formatsOptions)
{
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
FiltersList filtersList = new FiltersList();
DicConsole.WriteLine("Supported filters:");

View File

@@ -74,7 +74,6 @@ namespace DiscImageChef.Commands
}
PluginBase plugins = new PluginBase();
plugins.RegisterAllPlugins();
try
{