public CryptoFactory(IEnumerable <Assembly> extraAssemblies) { IEnumerable <Type> types = TypeDiscovery.Interface(typeof(ICryptoFactory), extraAssemblies); foreach (Type type in types) { Add(() => Activator.CreateInstance(type) as ICryptoFactory); } }
public CryptoPolicy(IEnumerable <Assembly> extraAssemblies) { IEnumerable <Type> policyTypes = TypeDiscovery.Interface(typeof(ICryptoPolicy), extraAssemblies); foreach (Type policyType in policyTypes) { ICryptoPolicy instance = Activator.CreateInstance(policyType) as ICryptoPolicy; _policies.Add(instance.Name, instance); } }