Esempio n. 1
0
 private void AddGenerators(Assembly generatorsAssembly)
 {
     foreach (Type type in generatorsAssembly.DefinedTypes)
     {
         if (typeof(IGenericGenerator).IsAssignableFrom(type) && type.IsClass) // first check classes wich inherit IGenerator
         {
             ConstructorInfo[]       constructorsInfo        = type.GetConstructors();
             GenerateAnyTypeDelegate generateAnyTypeDelegate = Create;
             IGenericGenerator       genericGenerator        = (IGenericGenerator)constructorsInfo[0].Invoke(new object[] { Random, generateAnyTypeDelegate });
             if (GenericGeneratorByType.Keys.Contains(genericGenerator.TypeOfGenerated))
             {
                 continue;
             }
             else
             {
                 GenericGeneratorByType.Add(genericGenerator.TypeOfGenerated, genericGenerator);
             }
         }
         else if (typeof(IGenerator).IsAssignableFrom(type) && type.IsClass)
         {
             ConstructorInfo[] constructorsInfo = type.GetConstructors();
             IGenerator        generator        = (IGenerator)constructorsInfo[0].Invoke(new object[] { Random });
             if (GeneratorByType.Keys.Contains(generator.TypeOfGenerated))
             {
                 continue;
             }
             else
             {
                 GeneratorByType.Add(generator.TypeOfGenerated, generator);
             }
         }
     }
 }
 public SingleTypeListInterfaceGenerator(Random random, GenerateAnyTypeDelegate generateAnyTypeDelegate)
 {
     Random = random;
     GenerateAnyTypeDelegate = generateAnyTypeDelegate;
 }
Esempio n. 3
0
 public ArrayGenerator(Random random, GenerateAnyTypeDelegate generateAnyTypeDelegate)
 {
     Random = random;
     GenerateAnyTypeDelegate = generateAnyTypeDelegate;
 }