public void Setup()
        {
            var bindingTypeDescriptors = new IAmBindingTypeDescriptor[]
            {
                new AmSingularBindingTypeDescriptor(),
                new AmListBindingTypeDescriptor()
            };

            factory     = new AmObjectClassFactory(bindingTypeDescriptors);
            model       = null;
            eventsFired = null;
        }
 public AmDiBasedObjectFactory(IReadOnlyList <IAmBindingTypeDescriptor> bindingTypeDescriptors, Func <Type, object> getDependency)
 {
     this.getDependency = getDependency;
     classFactory       = new AmObjectClassFactory(bindingTypeDescriptors);
     instantiators      = new ConcurrentDictionary <Type, IAmObjectInstantiator>();
 }